在strings.xml中获取随机字符串

时间:2015-03-21 16:29:30

标签: android string checkbox random textview

我的Values-> Strings.xml文件中有字符串,当我点击一个按钮时,我想从这个文件中显示一个随机字符串。我的main.xml有这样的复选框:

例如:

  • 大众汽车(Checkbox)

  • 奥迪(复选框)

  • 梅赛德斯(复选框)

  • 福特(未选中)

当用户点击“生成汽车”按钮时,系统会随机获取点击品牌的数组项目。

梅赛德斯阵列有c180-e250-e200-c120等。 奥迪阵列有a1-a2-a3-a4等。

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Generate Car"
    android:id="@+id/button"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:text="Butona Basın !"
    android:id="@+id/textView1"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true" />

<CheckBox
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="VolksWagen"
    android:id="@+id/checkBox"
    android:layout_below="@+id/textView1"
    android:layout_alignParentStart="true"
    android:checked="false" />

<CheckBox
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Audi"
    android:id="@+id/checkBox2"
    android:layout_below="@+id/checkBox"
    android:layout_alignParentStart="true"
    android:checked="false" />

<CheckBox
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Mercedes"
    android:id="@+id/checkBox3"
    android:layout_below="@+id/checkBox2"
    android:layout_alignParentStart="true"
    android:checked="false" />

<CheckBox
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Ford"
    android:id="@+id/checkBox4"
    android:layout_below="@+id/checkBox3"
    android:layout_alignParentStart="true"
    android:checked="false" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:text="Passat"
    android:id="@+id/textView"
    android:layout_below="@+id/checkBox4"
    android:layout_centerHorizontal="true" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:text="A6"
    android:id="@+id/textView2"
    android:layout_below="@+id/textView"
    android:layout_centerHorizontal="true" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:text="C180 AMG"
    android:id="@+id/textView3"
    android:layout_below="@+id/textView2"
    android:layout_centerHorizontal="true" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:text="Mustang"
    android:id="@+id/textView4"
    android:layout_below="@+id/textView3"
    android:layout_alignStart="@+id/textView3" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="Volkswagen"
    android:id="@+id/textView5"
    android:layout_above="@+id/textView2"
    android:layout_toStartOf="@+id/textView1" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="Audi"
    android:id="@+id/textView6"
    android:layout_above="@+id/textView3"
    android:layout_alignEnd="@+id/checkBox" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="Mercedes"
    android:id="@+id/textView7"
    android:layout_below="@+id/textView6"
    android:layout_toEndOf="@+id/checkBox4" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="Ford"
    android:id="@+id/textView8"
    android:layout_below="@+id/textView3"
    android:layout_alignEnd="@+id/textView5" />

和主要活动;

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        TextView tvvolks = (TextView)findViewById(R.id.textvolks);
        TextView txaudi = (TextView)findViewById(R.id.textaudi);
        TextView txford = (TextView)findViewById(R.id.textford);
        TextView txmerc = (TextView)findViewById(R.id.textmerc);
        Button generate = (Button)findViewById(R.id.button);
        //When pressed button check to checkbox and whole actived get a random string at string.xml

    }
}

string.xml

  <string-array name="Mercedes">
    <item>C180</item>
    <item>E250</item>
    <item>etc.</item>
</string-array>
<string-array name="Audi">
    <item>A1</item>
    <item>A2</item>
</string-array> <string-array name="Ford">
<item>Mustang</item>
<item>Fusion</item>
<item>Focus</item>

1 个答案:

答案 0 :(得分:0)

string.xml主要用于要翻译的字符串和用于布局等其他资源的字符串。

由于汽车品牌和型号不会被翻译,如果将它们存储在静态ArrayListHashMap内会更好。然后,您可以轻松地直接访问它们。