[英]How can I change focus from edit text on button click?
我想知道如何可以集中精力從Edit_text
上Button_click
。
默認focus
上Edit_text_1
當我點擊Save_Button_1
我想刪除focus
從Edit_text_1
並設置focus
上Edit_text_2
,當我點擊Save_button_2
我想刪除focus
從Edit_text_2
並設置focus
上Edit_text_1
。
編輯
這是我的代碼-
MainActivty.java
public class MainActivity extends AppCompatActivity {
EditText et1,et2;
TextView tv1,tv2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et1 = (EditText)findViewById(R.id.et1);
et2 = (EditText)findViewById(R.id.et2);
tv1 = (TextView) findViewById(R.id.tv1);
tv2 = (TextView) findViewById(R.id.tv2);
tv1.setText("edit");
tv1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
et1.clearFocus();
et2.setFocusable(true);
// String str = et1.getText().toString();
// Toast msg = Toast.makeText(getBaseContext(),str,Toast.LENGTH_LONG);
// msg.show();
}
});
tv2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
et2.clearFocus();
et1.setFocusable(true);
// String str = et2.getText().toString();
// Toast msg = Toast.makeText(getBaseContext(),str,Toast.LENGTH_LONG);
// msg.show();
}
});
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/et1"
android:layout_weight="0.1"
android:focusableInTouchMode="true"
android:nextFocusDown="@+id/et2"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tv1"
android:text="Save"
android:textSize="20sp"
android:layout_margin="10dp"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/et2"
android:layout_weight="0.1"
android:nextFocusUp="@id/et1"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Save"
android:id="@+id/tv2"
android:textSize="20sp"
android:layout_margin="10dp"/>
</LinearLayout>
</LinearLayout>
誰能幫幫我。謝謝。
嘗試這個,
YOUR_EDITEXT_NAME.requestFocus();
您可以根據需要使用此行代碼
editText.requestFocus();
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);
並明確重點
editText.clearFocus();
試試這個代碼:
property in your xml file. For example (for edittext1):
android:nextFocusDown="@+id/edittext2"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.