使用 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" 目录中始终是最佳做法