嘿,我有實現一個彈出式對話框像這樣一個在這個例子中的一個問題:http://malsandroid.blogspot.com/2010/04/list-picker-and-fading-popup-notice.html彈出的對話框中輸入
它,如果我實現了編輯框代碼的工作就好了。問題是,我想在應用中使用選項菜單,讓用戶可以控制他是否想要使用android中的標準鍵盤或此彈出對話框作爲編輯框的輸入。
如果我直接把這個代碼放到main.java類正常工作,因爲我剛纔說的(相同的代碼上面的例子):
hcp_entry_player_1 = (EditText)findViewById(R.id.hcp_entry_player_1);
final CharSequence[] items = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"};
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Pick a hcp");
builder.setItems(items, new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialogInterface, int item)
{
hcp_entry_player_1.setText(items[item]);
Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();
return;
}
});
builder.create().show();
爲了使長話短說,當我使用的選項菜單我需要在不同的void方法之間使用onClickListener。因此,我不能撥打AlertDialog.Builder builder = new AlertDialog.Builder(this);
。我試圖撥打AlertDialog.Builder builder = new AlertDialog.Builder(getApplicationContext());
但它不工作。說實話,我真的不明白這個問題?
萬一有人有興趣,我將輸入更多的代碼:
public void setListInputMethod()
{
for(EditText et : mEditTextList)
{
et.setEnabled(false);
et.setOnClickListener(mTouchTextFieldListener);
}
}
private OnClickListener mTouchTextFieldListener = new OnClickListener()
{
EditText et;
public void onClick(View v)
{
et = (EditText)v;
final CharSequence[] items = {"1", "2", "3"};
AlertDialog.Builder builder = new AlertDialog.Builder(getApplicationContext());
builder.setTitle("Pick a hcp");
builder.setItems(items, new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialogInterface, int item)
{
et.setText(items[item]);
Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();
return;
}
});
builder.create().show();
}
};
這種方法循環的所有編輯文本的應用程序,並試圖設置彈出的對話框中輸入,但是如上所述它不工作。真的需要建議,thx提前!