使用 AutoCompleteTextView 更改当前显示页面
Using AutoCompleteTextView to change current dispaly page
有一个 AutoCompleteTextView,当用户从 AutoCompleteTextView 中写入例如蓝色和 select 它时,当前页面将更改为该特定页面。
代码如下:
public class MainActivity extends Activity {
private AutoCompleteTextView et_search_game;
private TextView TextViewForAutoComplete;
private static String[] GAMES_NAME = new String[] { "blue", "red", "black" };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//AutoCompleteTextView Setting.
et_search_game = (AutoCompleteTextView)findViewById(R.id.actv_search_game_name_xml);
//TextView Setting.
TextViewForAutoComplete = (TextView)findViewById(R.id.tv_for_auto_complete_tv_xml);
ArrayAdapter<String> arrayAdapterForGamesName = new ArrayAdapter<String>(this, android.R.layout.select_dialog_item, GAMES_NAME);
et_search_game.setThreshold(1);
et_search_game.setAdapter(arrayAdapterForGamesName);
et_search_game.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> a, View v, int i, long l) {
// TODO Auto-generated method stub
if(et_search_game.getText().toString().trim()=="blue"){
setContentView(R.xml.blue);
} else if (et_search_game.getText().toString().trim()=="red"){
setContentView(R.xml.red);
} else if (et_search_game.getText().toString().trim()=="black") {
setContentView(R.xml.black);
}
}
});
}
红色、黑色、蓝色页面是正常的 XML 个文件,位于名为 'xml'.
的目录中
在运行代码后,当我写b时,黑行显示,我点击它但没有任何反应。
我不想使用 activity(intent) 方法。
谢谢。
代替==使用.equals
您可以从适配器和位置 "i"
中获取值,而不是从 "et_search_game.getText().toString().trim()" 中获取值
将布局 xml 放在 "layout" 目录中始终是最佳做法
有一个 AutoCompleteTextView,当用户从 AutoCompleteTextView 中写入例如蓝色和 select 它时,当前页面将更改为该特定页面。
代码如下:
public class MainActivity extends Activity {
private AutoCompleteTextView et_search_game;
private TextView TextViewForAutoComplete;
private static String[] GAMES_NAME = new String[] { "blue", "red", "black" };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//AutoCompleteTextView Setting.
et_search_game = (AutoCompleteTextView)findViewById(R.id.actv_search_game_name_xml);
//TextView Setting.
TextViewForAutoComplete = (TextView)findViewById(R.id.tv_for_auto_complete_tv_xml);
ArrayAdapter<String> arrayAdapterForGamesName = new ArrayAdapter<String>(this, android.R.layout.select_dialog_item, GAMES_NAME);
et_search_game.setThreshold(1);
et_search_game.setAdapter(arrayAdapterForGamesName);
et_search_game.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> a, View v, int i, long l) {
// TODO Auto-generated method stub
if(et_search_game.getText().toString().trim()=="blue"){
setContentView(R.xml.blue);
} else if (et_search_game.getText().toString().trim()=="red"){
setContentView(R.xml.red);
} else if (et_search_game.getText().toString().trim()=="black") {
setContentView(R.xml.black);
}
}
});
}
红色、黑色、蓝色页面是正常的 XML 个文件,位于名为 'xml'.
的目录中在运行代码后,当我写b时,黑行显示,我点击它但没有任何反应。
我不想使用 activity(intent) 方法。 谢谢。
代替==使用.equals
您可以从适配器和位置 "i"
中获取值,而不是从 "et_search_game.getText().toString().trim()" 中获取值将布局 xml 放在 "layout" 目录中始终是最佳做法