Android-String-Array aus XML-Datei in ListView

Zuerst danke für eure Antworten! Ich bin neu für Android und das ist mein Problem;

Ich möchte Werte von String-Array auf Listview nehmen.

  • Inverted ListView in Android?
  • Wie schalte ich aufListItemClick in Listactivity mit Schaltflächen in der Liste?
  • Umwandlung von JSONarray in ArrayList
  • Wie benutzt man D-pad navigate switch zwischen listview's row und es ist decendants (Google-TV-Unterstützung)
  • Android - Listview löschen und aktualisieren
  • Wie man Trennzeichen in einem PreferenceFragment verwaltet?
  • Programm funktioniert gut mit diesen Codes:

    private String [] fiilliste={"A","Ağlamak","Almak","B","Bulmak"}; ArrayAdapter<String> adapter; adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, fiilliste); vlist.setAdapter(adapter); 

    Aber ich möchte xml-Datei für string-array verwenden. Dies ist meine XML-Datei:

     <?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="fi"> <item>A</item> <item>Almak</item> <item>Anlamak</item> <item>Anlasmak</item> <item>Anlatmak</item> <item>Ayrilmak</item> </string-array> </resources> 

    Und ich habe gerade den Code mit folgendem Code geändert, und jetzt Programm funktioniert nicht.

     String [] fiilliste= getResources().getStringArray(R.array.fi); 

    Kannst du mir helfen, dieses Problem zu lösen? Vielen Dank!

    Aktivitätscodes:

     package com.gazi.tezproje; import android.app.ActionBar; import android.app.Activity; import android.os.Bundle; import android.text.Editable; import android.text.TextWatcher; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.EditText; import android.widget.ImageButton; import android.widget.ListView; import android.widget.Toast; public class verbs extends Activity { public boolean onCreateOptionsMenu(Menu menu) { ActionBar bar=getActionBar(); bar.setDisplayHomeAsUpEnabled(true); MenuInflater menu1 = getMenuInflater(); menu1.inflate(R.menu.info, menu); return super.onCreateOptionsMenu(menu); } public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.menuinfo: Toast.makeText(getApplicationContext(),getString(R.string.verbs), Toast.LENGTH_LONG).show(); break; case android.R.id.home: finish(); break; } return false;} private ListView vlist; EditText ara; String [] fiilliste= getResources().getStringArray(R.array.fi); ArrayAdapter<String> adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.verbs); vlist=(ListView)findViewById(R.id.listView1); adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, fiilliste); vlist.setAdapter(adapter); ara = (EditText) findViewById(R.id.editText1); vlist.setTextFilterEnabled(true); ara.addTextChangedListener(new TextWatcher(){ public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) { // When user changed the Text verbs.this.adapter.getFilter().filter(cs); } @Override public void afterTextChanged(Editable arg0) { // TODO Auto-generated method stub } @Override public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { // TODO Auto-generated method stub } }); } } 

  • Android - Ein Video-Thumbnail aus einer URL anzeigen
  • Android Bitmap speichern ohne transparenten Bereich
  • getActivity () Aufruf Ursachen RuntimeException: Konnte nicht starten Absicht Intent act = android.intent.action.MAIN
  • Warum aktualisiert Android Eclipse ständig externe Ordner und nimm forver?
  • Passen Sie divider / separator in Dropdown einer AutocompleteTextview an
  • Ich muss meine App auf verschiedenen virtuellen Geräten testen
  • 4 Solutions collect form web for “Android-String-Array aus XML-Datei in ListView”

    Ändern

     String [] fiilliste; ArrayAdapter<String> adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.verbs); fiilliste = getResources().getStringArray(R.array.fi); // move this in onCreate 

    Ich nehme an, du hast das String-Array fi in strings.xml .

    Sie haben wahrscheinlich NullPointerException . Sie benötigen den Aktivitätskontext für getResources() . So verschiebe es in onCreate .

    Hier ist was ich tat Ich habe ein String-Array in array.xml erstellt

      <resources> <string-array name="numbers"> <item>1</item> <item>2</item> <item>3</item> <item>4</item> <item>5</item> <item>6</item> <item>7</item> <item>8</item> <item>9</item> <item>10</item> </string-array> 

    Und legte ein lisView in meinem xml-Layout

      <ListView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/listView" android:entries="@array/numbers" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" /> 

    Hier ist meine MainActivity aussehen.

     public class MainActivity extends AppCompatActivity implements AdapterView.OnItemClickListener { ListView listView; String[] number; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); number = getResources().getStringArray(R.array.numbers); listView = (ListView) findViewById(R.id.listView); ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, number); listView.setAdapter(adapter); listView.setOnItemClickListener(this); } @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { TextView textView = (TextView) view; Toast.makeText(this, textView.getText() , Toast.LENGTH_SHORT).show(); } 

    }

    Ihr Problem ist, dass der Code in die Erstellung oder eine andere Funktion eingefügt werden soll. Nicht als statische Variable

    Entfernen Sie android:entries aus Ihrer .xml-Datei und definieren Sie das String-Array in

     String[] number = getResources().getStringArray(R.id.numbers); ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, number); 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.