我在他们各自的ScrollView中包含了几个LinearLayout,而ScrollView又包含在ViewFlipper中。奇怪的是,在某些布局中,一旦它们具有焦点,它就会自动在顶部以外的位置开始。
那么可能导致这种情况的原因是什么?为了强制它们从顶部开始,有什么类似于html中的tabindex属性吗?
由于
答案 0 :(得分:0)
如果您遇到问题,焦点会自动消失在其他地方而不是顶部位置的字段上,那么您必须在活动生命周期的onStart()方法中编写此代码,并在我的第一个字段中使用相应的字段ID 由firstfield_et引用,这是Activity.java文件的变量,它也已由.xml文件中的etfirstfield引用
代码如下:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
EditText firstfield_et= (EditText) findViewById(R.id.etfirstfield);
}
@Override
protected void onStart() {
super.onStart();
if(TextUtils.isEmpty(firstfield_et.getText().toString())){
firstfield_et.requestFocus();
}
}