10  

關鍵在 <requestFocus/> 或者 editText.requestFocus()。






main.xml

 

<LinearLayout xmlns:android="HTTP://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Name"/>
<EditText
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<requestFocus/>
</EditText>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Phone"/>
<EditText
android:id="@+id/phone"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<requestFocus/>
</EditText>
</LinearLayout>
</LinearLayout>



FocusActivity.java

 

public class FocusActivity extends Activity {

 

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
EditText name= (EditText) this.findViewById(R.id.name);
name.requestFocus();
}
}

 

當多個地方使用 requestFocus,只會有一個地方生效,就是最後執行 requestFocus 的地方,由以上的範例可以看出來,phone 的 <requestFocus/> 蓋過 name 的 <requestFocus/> ,而 name 的 requestFocus() 又蓋過 phone 的 <requestFocus/>。
創作者介紹
創作者 shadow 的頭像
shadow

資訊園

shadow 發表在 痞客邦 留言(0) 人氣()