2 cheerduo cheerduo 于 2016.01.27 20:59 提问

刚学Android,一个AlertDialog的问题请教各位大大~~

想达到的效果是:按了一个按钮,弹出的选择框会显示两个选项----“手动输入”和“摄像头输入”,当我选中其中一个后,按“确认”按钮,屏幕下方会短暂显示一行“选择的输入方式:XX输入”,XX是我选中的方式。
目前的问题是:setSingleChoiceItems里面onClick方法不会写。
图片说明

6个回答

huangf321123
huangf321123   2016.01.28 11:19
已采纳

which 就是你点的item的位置

cheerduo
cheerduo 3q,回复晚了,我把SingleChoiceItems的which赋值给item,然后把item的值赋给PositiveButton的which,然后解决了
接近 2 年之前 回复
VqwertyV
VqwertyV 回复vqwertyv: 能看懂英文的话在相应的方法或者类上面按f2(eclipse)或crtl+q(Android Studio)看那个文档就好
接近 2 年之前 回复
VqwertyV
VqwertyV 补充一下singleChoiceItem中的which是相应的item,positiveClick中的which值是-1,neutral和negative的which是-2和-3
接近 2 年之前 回复
caozhy
caozhy   Ds   Rxr 2016.01.27 21:27

你的问题无非就是如何得到alertdialog的返回值

用findViewById找到alertdialog,得到用户的选择,然后传回来
参考:http://www.cnblogs.com/xiaoluo501395377/p/3417048.html

andriod132
andriod132   2016.01.28 07:50

int id=getItemID()
switch(id){
case :
Toast.makeText()
break;
……
}

crazy1235
crazy1235   Ds   Rxr 2016.01.31 12:28

setSingleChoiceItems 方法里面就写你对“手动输入”“摄像头输入”的判断逻辑。

if (which == ways[0]){
 //TODO 手动输入的逻辑
}else if(which == ways[1]){
    //TODO 摄像头输入逻辑代码
}

qq_27578023
qq_27578023   2016.06.09 20:29

which 就是你点的item的位置

你的问题无非就是如何得到alertdialog的返回值

用findViewById找到alertdialog,得到用户的选择,然后传回来
参考:http://www.cnblogs.com/xiaoluo501395377/p/3417048.html

91program
91program   Ds   Rxr 2016.01.27 21:22

这种需要求,建议你不要使用 AlertDialog,采用自己定义的对话框。
这样方便布局 Radio Button 来选择。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!