View view1 = LayoutInflater.from(LuzhiAdmin_Xiangmu_Big_Add.this).inflate(R.layout.tanchuang, null); AlertDialog.Builder builder = new AlertDialog.Builder(LuzhiAdmin_Xiangmu_Big_Add.this); builder.setView(view1); ArrayList<String> jg = new ArrayList<String>(); final boolean[] check = {false,false,false,false,false,false,false,false,false,false,false,false}; String[] finalXx = xx; builder.setTitle ("需要做具体工作的岗位(自己除外):") .setMultiChoiceItems (finalXx, check, new DialogInterface.OnMultiChoiceClickListener () { @Override public void onClick(DialogInterface dialog, int which, boolean isChecked) { //Log.e("Log", finalXx[which]); } }) .setPositiveButton ("确定", new DialogInterface.OnClickListener () { @Override public void onClick(DialogInterface dialog, int which) { for (int n=0;n<check.length;n++){ if(check[n]){ jg.add(finalXx[n]); } } if(jg!=null) { for (String i : jg) { per_gangwei = per_gangwei + i + "#"; } //per_gangwei = per_gangwei+"工程师"+"#"; } } }); AlertDialog dialog = builder.create(); dialog.show();
时间: 2024-02-10 07:05:32 浏览: 29
这段代码是一个创建AlertDialog的示例,实现了弹窗多选功能。具体实现步骤如下:
1. 首先使用LayoutInflater从布局文件中获取一个View,可以通过这个View来设置AlertDialog的内容。
2. 创建一个AlertDialog.Builder对象,并设置AlertDialog的标题、内容和按钮等。
3. 使用setMultiChoiceItems方法设置多选列表的内容和初始状态。
4. 在setPositiveButton方法中实现确定按钮的点击事件,将选中的内容保存下来。
5. 调用create方法创建AlertDialog对象,并调用show方法显示弹窗。
需要注意的是,在这个示例中使用了一个boolean数组来保存多选列表的状态,因此需要在确定按钮点击事件中遍历这个数组来获取选中的内容。另外,对于复杂的布局和交互逻辑,建议使用DialogFragment来实现AlertDialog,这样可以更好地管理弹窗的生命周期。
相关问题
t.setTLayoutInflater layoutInflater=LayoutInflater.from(context); View view=layoutInflater.inflate(R.layout.listview_item,null); TextView t=view.findViewById(R.id.list_item_textview);ext(list.get(position).getUserName());我想在里面放入两个数据应该怎么改
你可以将这段代码修改为:
LayoutInflater layoutInflater = LayoutInflater.from(context);
View view = layoutInflater.inflate(R.layout.listview_item, null);
TextView t = view.findViewById(R.id.list_item_textview);
String userName = list.get(position).getUserName();
String otherData = "your other data"; // 替换为你的其他数据
t.setText(userName + " " + otherData);
这样就可以在 TextView 中展示用户名和其他数据了。
View view = LayoutInflater.from(mContext).inflate(R.layout.fruit_item,parent,false); ViewHolder holder = new ViewHolder(view);
这是一个典型的 Android 中 RecyclerView 的 ViewHolder 的初始化代码,其中 mContext 是上下文对象,R.layout.fruit_item 是布局文件,parent 是 RecyclerView 的父容器,false 表示不需要将该视图添加到父容器中。这段代码的作用是将布局文件 R.layout.fruit_item 转换成一个 View 对象,并将其传递给 ViewHolder 的构造函数,最终返回一个 ViewHolder 对象。