控件设置为focusable为true后要点击第2下才能触发OnClick事件

        <TextView
            android:id="@+id/fixed_contact"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:text="@string/hello" />

比如有一个TextView,设置了focusable为true,在代码里注册了OnClickListener,
        fixedContact = (TextView)findViewById(R.id.fixed_contact);
        fixedContact.setOnClickListener(new OnClickListener(){

			public void onClick(View v) {
				fixedContact.requestFocus();
				fixedContact.setText("fixedContact" + i);
			}
        	
        });
第一下点击时不会触发onClick事件,只是焦点转移到了TextView上,然后第二下点击才会触发onClick。昨天还被弄晕了,不知道为什么,今天写了个小工程验证了下自己的想法,O(∩_∩)O哈哈~。

你可能感兴趣的:(android,layout)