程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> string-Android中程序化加載字符串數組

string-Android中程序化加載字符串數組

編輯:編程綜合問答
Android中程序化加載字符串數組

我有一個類StringsA,在這個類中有一個字符串列表。

public class StringsA {

static String Names[] = {"Larry", "Moe", "Curly", "John"};  

}

在主類中有一個button和textview。我想實現的是每次當按鈕被點擊時,textview能用.setText從字符串中調用一個不同的名字。例如,現在的名字是Moe,當點擊按鈕後,textview的名字變成 John。名字的變化是隨機的,沒有順序。

setContentView(R.layout.main);
    Button a = (Button) findViewById(R.id.button1);
    TextView b = (TextView) findViewById(R.id.tv);        

    Resources i = getResources();
    i.getResourceName(StringsA.Names);

    a.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {               

        }
    });
}

在i.getResourceTypeName處出錯。如何點擊按鈕改變textview裡的字符串名稱?

最佳回答:


充分利用Android資源,從strings.xml的字符串數組中加載一個值。例如:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="planets_array">
        <item>Mercury</item>
        <item>Venus</item>
        <item>Earth</item>
        <item>Mars</item>
    </string-array>
</resources>

然後:

 private static final Random RAND = new Random();

  public void onCreate(Bundle savedInstanceState) {
    setContentView(R.layout.main);
    Button myButton = (Button) findViewById(R.id.button1);
    TextView myTextField = (TextView) findViewById(R.id.tv);     

    final String[] values = getResources().getStringArray(R.array.planets_array);
    myButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {     
          String nextValue = values[RAND.nextInt(values.length)]          
          myTextField.setText(nextValue);
        }
    });
  }
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved