Java 在onClick事件后创建对话框
嗨,我第一次使用dialogs。 我想在单击listView中的项目后创建一个对话框:Java 在onClick事件后创建对话框,java,android,dialog,onclick,Java,Android,Dialog,Onclick,嗨,我第一次使用dialogs。 我想在单击listView中的项目后创建一个对话框: String[] listItems = {"Colour", "Font Size",}; ListView lv = (ListView) findViewById(R.id.settings_list); lv.setAdapter(new ArrayAdapter<String> (this, android.R.layout.simple_list_it
String[] listItems = {"Colour", "Font Size",};
ListView lv = (ListView) findViewById(R.id.settings_list);
lv.setAdapter(new ArrayAdapter<String>
(this, android.R.layout.simple_list_item_1, listItems));
lv.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View
view, int position, long id)
{
String[] listItems = {"Colour", "Font Size",};
if(listItems[position].equals("Font Size"))
{
public dialog onCreateDialog(Bundle savedInstanceState)
{
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Choose Font Size");
}
}
}
});
String[]listItems={“颜色”、“字体大小”,};
ListView lv=(ListView)findViewById(R.id.settings\u列表);
低压设置适配器(新阵列适配器
(这是android.R.layout.simple_list_item_1,listItems));
lv.setOnItemClickListener(新的OnItemClickListener()
{
公共视图单击(AdapterView父视图、视图
视图,整数位置,长id)
{
String[]listItems={“颜色”、“字体大小”,};
if(listItems[position].equals(“字体大小”))
{
创建对话框上的公共对话框(Bundle savedInstanceState)
{
AlertDialog.Builder=新建AlertDialog.Builder(getActivity());
builder.setTitle(“选择字体大小”);
}
}
}
});
我在onCreateDialog(Bundle savedInstanceState)中遇到错误
月食想要一个新的世界;关于Bundle savedInstanceState,但developer.android则相反。
有什么提示吗?移动
public dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Choose Font Size");
}
int类作用域,并从onItemClick调用它
public void onItemClick(AdapterView<?> parent, View
view, int position, long id)
{
String[] listItems = {"Colour", "Font Size",};
if(listItems[position].equals("Font Size"))
{
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Choose Font Size").show();
}
}
public void onItemClick(AdapterView父级,视图
视图,整数位置,长id)
{
String[]listItems={“颜色”、“字体大小”,};
if(listItems[position].equals(“字体大小”))
{
AlertDialog.Builder=新建AlertDialog.Builder(getActivity());
builder.setTitle(“选择字体大小”).show();
}
}
试试这个
String[] listItems = {"Colour", "Font Size",};
ListView lv = (ListView) findViewById(R.id.settings_list);
lv.setAdapter(new ArrayAdapter<String>
(this, android.R.layout.simple_list_item_1, listItems));
lv.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View
view, int position, long id)
{
String[] listItems = {"Colour", "Font Size",};
if(listItems[position].equals("Font Size"))
{
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
getApplicationContext());
// set title
alertDialogBuilder.setTitle("Choose Font Size");
//create alert dialog
AlertDialog alertDialog = alertDialogBuilder.create();
// show it
alertDialog.show();
}
}
});
String[]listItems={“颜色”、“字体大小”,};
ListView lv=(ListView)findViewById(R.id.settings\u列表);
低压设置适配器(新阵列适配器
(这是android.R.layout.simple_list_item_1,listItems));
lv.setOnItemClickListener(新的OnItemClickListener()
{
公共视图单击(AdapterView父视图、视图
视图,整数位置,长id)
{
String[]listItems={“颜色”、“字体大小”,};
if(listItems[position].equals(“字体大小”))
{
AlertDialog.Builder alertDialogBuilder=新建AlertDialog.Builder(
getApplicationContext());
//定名
setTitle(“选择字体大小”);
//创建警报对话框
AlertDialog AlertDialog=alertDialogBuilder.create();
//表现出来
alertDialog.show();
}
}
});
在onItemClick方法中调用此方法:
public void showMyCustomDialog(Context context, String title, String message)
{
final Dialog dialog = new Dialog(context);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
//tell the Dialog to use the customalertdialog.xml as it's layout description
dialog.setContentView(R.layout.customalertdialog);
TextView titleText = (TextView) dialog.findViewById(R.id.txtTitleAlertDialog);
titleText.setText(title);
TextView txt = (TextView) dialog.findViewById(R.id.txtAlertDialog);
txt.setText(message);
Button dialogButton = (Button) dialog.findViewById(R.id.buttonAlertDialogCancel);
dialogButton.setText("OK");
dialogButton.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
dialog.show();
}
如下所示:
lv.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View
view, int position, long id)
{
String[] listItems = {"Colour", "Font Size",};
if(listItems[position].equals("Font Size"))
{
public dialog onCreateDialog(Bundle savedInstanceState)
{
showMyCustomDialog(Context context, String title, String message) // pass title, message and activity context in this method.
}
}
}
});
lv.setOnItemClickListener(新的OnItemClickListener()
{
公共视图单击(AdapterView父视图、视图
视图,整数位置,长id)
{
String[]listItems={“颜色”、“字体大小”,};
if(listItems[position].equals(“字体大小”))
{
创建对话框上的公共对话框(Bundle savedInstanceState)
{
showMyCustomDialog(上下文上下文、字符串标题、字符串消息)//在此方法中传递标题、消息和活动上下文。
}
}
}
});
希望它能有所帮助。听起来很有趣,但在onItemClick?onCreateDialog(null)中如何称呼它;例如?然后我得到一个错误,类型new AdapterView.OnItemClickListener()的getActivity()未定义{}