G
Gerhard123456
Neues Mitglied
- 0
Hallo,
ich bin neu im Programmieren und versuche mir gerade eine App zu erstellen, die mir eine Liste von codes ausgibt. Bei klicken auf den entsprechenden werde ich auf die Beschreibung weitergeleitet. Dies funktioniert wunderbar.
Da ich eine sehr große Liste anzeigen lasse, möchte ich noch einen SearView einfügen. Leider komme ich da gar nicht klar. Selbst mit Beispielen aus dem Netz bekomme ich das nicht hin.
Ich hoffe es kann mir jemand helfen. NAch folgend mein Code aus der MainActivity und die ListActivity für das Anzeigen der Beschreibung.
MainActivity.java
ListActivity.java // Beschreibung der Codes nach anklicken in MainActivity
activity_main.xml //Layout
Anhang anzeigen 565714 Anhang anzeigen 565714 Anhang anzeigen 565714 Anhang anzeigen 565714 Anhang anzeigen 565714 Anhang anzeigen 565715 Anhang anzeigen 565714 Anhang anzeigen 565715
ich bin neu im Programmieren und versuche mir gerade eine App zu erstellen, die mir eine Liste von codes ausgibt. Bei klicken auf den entsprechenden werde ich auf die Beschreibung weitergeleitet. Dies funktioniert wunderbar.
Da ich eine sehr große Liste anzeigen lasse, möchte ich noch einen SearView einfügen. Leider komme ich da gar nicht klar. Selbst mit Beispielen aus dem Netz bekomme ich das nicht hin.
Ich hoffe es kann mir jemand helfen. NAch folgend mein Code aus der MainActivity und die ListActivity für das Anzeigen der Beschreibung.
MainActivity.java
Code:
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
ListView listView;
Button but_zu_codes;
ArrayAdapter<String> mAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
but_zu_codes = (Button) findViewById(R.id.codes);
but_zu_codes.setOnClickListener(this);
listView = (ListView) findViewById(R.id.listView);
mAdapter = new ArrayAdapter<String>(MainActivity.this,
android.R.layout.simple_list_item_1,
getResources().getStringArray(R.array.tr_codes));
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Intent intent = new Intent(MainActivity.this, ListActivity.class);
intent.putExtra("TroubleCodes", listView.getItemAtPosition(i).toString());
startActivity(intent);
}
});
listView.setAdapter(mAdapter);
}
ListActivity.java // Beschreibung der Codes nach anklicken in MainActivity
Code:
public class ListActivity extends AppCompatActivity {
ListView listView;
String[] states;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list);
listView = (ListView) findViewById(R.id.listView);
Bundle mBundle = getIntent().getExtras();
if (mBundle != null) {
String country = mBundle.getString("TroubleCodes");
if (country.equalsIgnoreCase("B0562")) {
states = getResources().getStringArray(R.array.c_B0562);
}
else if (country.equalsIgnoreCase("B0563")) { states = getResources().getStringArray(R.array.c_B0563); }
else if (country.equalsIgnoreCase("B1004")) { states = getResources().getStringArray(R.array.c_B1004); }
else if (country.equalsIgnoreCase("B1005")) { states = getResources().getStringArray(R.array.c_B1005); }
else if (country.equalsIgnoreCase("B1006")) { states = getResources().getStringArray(R.array.c_B1006); }
}
ArrayAdapter<String> mAdapter = new ArrayAdapter<String>(ListActivity.this,
android.R.layout.simple_list_item_1, states);
listView.setAdapter(mAdapter);
}
@Override
public void onClick(View v) {
if (v.getId() == R.id.codes) {
Intent weiter = new Intent(MainActivity.this, MainActivity.class);
startActivity(weiter);
}
}
}
activity_main.xml //Layout
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:id="@+id/activity_start"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="2dp"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:paddingTop="0dp"
tools:context="com.example.customlistview.MainActivity"
android:weightSum="1">
<SearchView
android:layout_width="match_parent"
android:layout_height="26dp" />
<ListView
android:layout_width="wrap_content"
android:layout_height="480dp"
android:id="@+id/listView"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/toolbar"
android:layout_weight="0.72" />
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:text="Codes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/codes"
android:background="@android:color/transparent"/>
</LinearLayout>
</LinearLayout>