我需要在NumberPicker中获取对EditText的引用.我知道选择器视图本身将是某种findVIEwByID,但是我无法为其找到android的ID:
final NumberPicker numberPicker = (NumberPicker) vIEw.findVIEwByID(R.ID.numberpicker);EditText numberPickerEditText = (EditText) numberPicker.findVIEwByID(WHAT IS THE ID???)
我知道NumberPicker具有用于值等的大多数有用方法,但是我需要一些更精细的控制,例如在选择器打开时显示键盘,而且我认为如果不引用EditText本身就无法做到这一点(免费)如果我做错了,请纠正我!)
解决方法:
如果看一下NumberPicker使用的xml文件,您会发现要查找的EditText的ID是numberpicker_input:
<merge xmlns:androID="http://schemas.androID.com/apk/res/androID"> <Imagebutton androID:ID="@+ID/increment" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" androID:background="@androID:drawable/numberpicker_up_btn" androID:paddingtop="22dip" androID:paddingBottom="22dip" androID:contentDescription="@string/number_picker_increment_button" /> <EditText androID:ID="@+ID/numberpicker_input" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" androID:textAppearance="@style/TextAppearance.Large.Inverse.NumberPickerinputText" androID:gravity="center" androID:singleline="true" androID:background="@drawable/numberpicker_input" /> <Imagebutton androID:ID="@+ID/decrement" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" androID:background="@androID:drawable/numberpicker_down_btn" androID:paddingtop="22dip" androID:paddingBottom="22dip" androID:contentDescription="@string/number_picker_decrement_button" /></merge>
因此,您可以使用相同的ID来做到这一点:
NumberPicker numberPicker = (NumberPicker) vIEw.findVIEwByID(R.ID.numberpicker);EditText numberPickerEditText = (EditText) numberPicker.findVIEwByID(R.ID.numberpicker_input)
编辑
好的,这个ID似乎在androID.internal.ID内部,因为它是系统ID,因此要访问它,您必须执行以下 *** 作:
numberPicker.findVIEwByID(Resources.getSystem().getIDentifIEr("numberpicker_input", "ID", "androID"))
总结 以上是内存溢出为你收集整理的android-如何在NumberPicker中引用EditText?全部内容,希望文章能够帮你解决android-如何在NumberPicker中引用EditText?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)