2013-10-27 11 views
9

タイトルで書いています。私はここで文字列配列から項目を取得し、テキストビューで1つずつ表示するための助けが必要です。リストビュー内のすべてが、私はここで、ランダムな1でテキストビュー1で私の悪い英語 、とにかく助けてくれてありがとう...アンドロイド:文字列配列からアイテムを取得し、それをテキストビューで1つずつ表示

public class MainActivity extends ListActivity { 

String[] mTestArray; 

    /** Called when the activity is first created. */ 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 

     super.onCreate(savedInstanceState); 

     // Create an ArrayAdapter that will contain all list items 
     ArrayAdapter<String> adapter; 

     mTestArray = getResources().getStringArray(R.array.planets_array);  

     /* Assign the name array to that adapter and 
     also choose a simple layout for the list items */ 
     adapter = new ArrayAdapter<String>(
       this, 
       android.R.layout.simple_list_item_1, 
       mTestArray); 

     // Assign the adapter to this ListActivity 
     setListAdapter(adapter); 
    } 
} 

XMLファイルについての私のコードと申し訳ありませんたびにそれらを表示必要があります。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".MainActivity" > 

    <TextView 

     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:text="@array/planets_array" 
/> 
</RelativeLayout> 

と文字列ファイル:

<?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> 
+0

ランダムにまたは連続して表示しますか? –

+0

Pls。私のansをチェックしてください。あなたの質問が答えられたらpls。 ansを受け入れる。 :) – lokoko

+0

あなたはリストビューを望んでいません、そうですか?あなたの配列値をランダムに表示するtextViewだけですか? – Devrim

答えて

19

コメントありがとうございました。あなたが必要としていることを理解し、その答えを編集しました。配列の値をランダムにtextViewに表示したいとします。

用途このアクティビティを:

public class MainActivity extends Activity { 

    String[] mTestArray; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.sample); 

     mTestArray = getResources().getStringArray(R.array.planets_array);  

    } 

    @Override 
    protected void onResume() { 
     super.onResume(); 
     updateTextView(); 
    } 

    private void updateTextView() { 
     TextView textView = (TextView)findViewById(R.id.randomTextView); 
     Random random = new Random(); 

     int maxIndex = mTestArray.length; 
     int generatedIndex = random.nextInt(maxIndex); 

     textView.setText(mTestArray[generatedIndex]); 
    } 
} 

のres /レイアウトフォルダの下にこのレイアウトを入れて、sample.xmlに名前を付けます。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".MainActivity" > 

    <TextView 
      android:id="@+id/randomTextView" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerHorizontal="true" 
      android:layout_centerVertical="true"/> 
</RelativeLayout> 
+0

それについてのおかげで、ありがとう、私はそれがランダムに値を表示するようにしたいと思いますアプリを起動すると、再び別のランダムな値を与える私はあなたが何かを理解して願って –

+0

だからあなたはリストビューをしたくないですか? – Devrim

+0

いいえ私は必要なリストをすべて表示する必要はありませんテキストビュー私はこのアプリケーションを実行するたびに文字列配列から1ランダム値を表示します..返信ありがとう:) –

関連する問題