【问题标题】:Android: Display Contents of Spinner Selection in EditTextAndroid:在 EditText 中显示 Spinner 选择的内容
【发布时间】:2011-11-20 04:20:06
【问题描述】:

我正在开发一个 android 项目,但我的设计过程中止了。我是一名初级 Java 程序员,也是 android sdk 的新手,所以请多多包涵……在我的主屏幕上,它提示用户从单独的微调器下拉菜单中进行 6 个选择。 6 个微调器中的每一个都包含相同的 StringArray。我想要做的是在单击“提交”按钮时在另一个屏幕上的 EditText 字段中显示 6 个不同的微调器选择。我正确设置了提交按钮侦听器以及新活动和将布局切换到输出屏幕的意图。我不明白的是如何使用微调器并将它们显示到文本字段中。我尝试设置 6 个单独的 SetOnItemSelectedListener 方法,但不确定是否允许。请帮忙,谢谢!

【问题讨论】:

    标签: android spinner android-edittext


    【解决方案1】:

    我建议您使用简单的ArrayAdapter 设置您的微调器,如下所示:

      String[] selections = new String[] { "Selection 1", "Selection 2", "Selection 3", "Selection 4" };
    
      ArrayAdapter<String> myAdapter = new ArrayAdapter<String>(mySpinner1.getContext(), android.R.layout.simple_spinner_item, selections);
      myAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
      mySpinner1.setAdapter(myAdapter);
    

    对所有 6 个微调器都遵循相同的概念。然后当你像这样获取它们的值时:

       String value1 = mySpinner1.getSelectedItem().toString();
       String value2 = mySpinner2.getSelectedItem().toString();       
       String value3 = mySpinner2.getSelectedItem().toString();
       String value4 = mySpinner2.getSelectedItem().toString();
       String value5 = mySpinner2.getSelectedItem().toString();
       String value6 = mySpinner2.getSelectedItem().toString();
    

    现在您可以根据需要连接这些字符串并将它们显示在您的文本视图中,如下所示:

       myTextView.setText(value1 + "," + value2 + "," + value3 + "," + value4 + "," + value5 + "," + value6);
    

    希望对您有所帮助。玩得开心。

    【讨论】:

    • 我有一个问题...我已经设置了类似于您建议的 ArrayAdapter... 现在,我是否需要为每个微调器单独设置一个 ArrayAdapter?我想当我尝试只制作一个适配器并让每个微调器引用相同的 ArrayAdapter 时出现错误。感谢您的帮助
    • 您好,每个微调器都需要一个新的适配器实例。每个微调器一个适配器。
    • 不幸的是,一旦我尝试设置我的 TextView,我的程序就会崩溃。如果我尝试更改的 TextView 位于不同的布局上,这有关系吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-17
    • 2020-05-01
    • 1970-01-01
    • 2010-12-15
    • 2015-04-03
    相关资源
    最近更新 更多