你在想什麼可能的東西更像是這樣的:
EditText[] ets = new EditText[5];
int i;
ets[0]=(EditText) findViewById(R.id.editText1);
ets[0].setVisibility(View.INVISIBLE);
ets[1]=(EditText) findViewById(R.id.editText2);
ets[1].setVisibility(View.INVISIBLE);
...
ets[4]=(EditText) findViewById(R.id.editText3);
ets[4].setVisibility(View.INVISIBLE);
for(i=0;i<=4;++i)
{
ets[i].setVisibility(View.VISIBLE);
}
話又說回來,如果你使用findViewById
,你可能不會需要一個數組的。只是說明你如何處理你在使用數組的問題。我想如果我正在做這樣的事情,我會更多地考慮以編程的方式創建EditText
。
這裏有個實用方法我有一個程序創建一個對話框,並在它的一些EditText
的,希望這有助於。
public static void testNotification(final Activity activity)
{
Dialog dlg = new Dialog(activity);
dlg.setTitle("Notification Test");
LinearLayout dlgView = new LinearLayout(activity);
dlgView.setOrientation(LinearLayout.VERTICAL);
dlg.addContentView(dlgView, new LayoutParams(200, 200));
final EditText et1 = new EditText(activity);
et1.setText("ABC");
dlgView.addView(et1);
final EditText et2 = new EditText(activity);
et2.setText("XYZ");
dlgView.addView(et2);
Button btn = new Button(activity);
btn.setText("Go");
dlgView.addView(btn);
et1.setWidth(LayoutParams.FILL_PARENT);
et2.setWidth(LayoutParams.FILL_PARENT);
btn.setWidth(LayoutParams.FILL_PARENT);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v)
{
Util.doNotification(activity, et1.getText().toString(), et2.getText()
.toString());
}
});
dlg.show();
return;
}
你爲什麼不保持'et'在數組和循環在他們的變量? – jmishra 2012-03-25 11:42:16