我有一個非常罕見的問題,無法在網上找到關於這個問題的任何信息!「合成參數太多......」錯誤。我如何規避/解決它?
我在Android應用程序中有一個按鈕,並且該按鈕的代碼讓我發瘋。顯然有一些模仿,你可以在你的按鈕程序中做多少「if」句子?
這裏有一些snippits(順便說一句,ETX =的EditText):
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
if (et1.getText().length()+et2.getText().length()==10) {keys++; oneStr=oneStr+et1.getText().toString()+" "+et2.getText().toString()+" ";}
if (et3.getText().length()+et4.getText().length()==10) {keys++; oneStr=oneStr+et3.getText().toString()+" "+et4.getText().toString()+" ";}
if (et5.getText().length()+et6.getText().length()==10) {keys++; oneStr=oneStr+et5.getText().toString()+" "+et6.getText().toString()+" ";}
這一直持續到:
if (et293.getText().length()+et294.getText().length()==10) {keys++; oneStr=oneStr+et293.getText().toString()+" "+et294.getText().toString()+" ";}
if (et295.getText().length()+et296.getText().length()==10) {keys++; oneStr=oneStr+et295.getText().toString()+" "+et296.getText().toString()+" ";}
因此總的來說148 「如果」 的句子!
確切的日食錯誤文本是: 「太多的合成參數,模擬參數val $ et253是超過255個字資格方法極限參數」
如果我刪除所有的「如果」的句子後幷包括:
if (et253.getText().length()+et254.getText().length()==10) {keys++; oneStr=oneStr+et253.getText().toString()+" "+et254.getText().toString()+" ";}
錯誤不再存在,程序適用於許多如果句子已經存在。所以顯然有些錯誤,但我不明白這個錯誤?
所以,當我從148「如果」去125「如果」句子應用程序可以編譯!
預先感謝您!
您確定要編寫此代碼嗎?爲什麼不使用數組。它必須是另一種解決方案,而不是這種可怕的代碼重複。 – theomega 2012-03-11 23:38:43
代碼可能會更聰明地創建,而不是代碼重複。對於這個特定的活動,我有很多這方面的知識,但根本不知道如何處理它。所以我做了一個python腳本,可以爲我創建所有這些重複。 我已經看過這篇文章http://stackoverflow.com/questions/5740708/android-clearing-all-edittext-fields-with-clear-button ,因爲我後來用數據填充了一些EditTexts,但是那個特殊的代碼片段在我的程序中顯然不是問題! – MCEinar 2012-03-11 23:54:32
你真的在同一個屏幕上有〜255個edittexts嗎? – njzk2 2012-03-12 10:02:55