ASリスト表示編③解説~コレクションのListを使ってリストを表示する~
import java.util.Arrays;
public class MainActivity extends AppCompatActivity {
String[] texts = {"abc","def","ghi","jkl"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ListView listView = findViewById(R.id.listView);
ArrayList<String> arrayList = new ArrayList<>(Arrays.asList(texts));
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(MainActivity.this, android.R.layout.simple_list_item_1,arrayList);
listView.setAdapter(arrayAdapter);
}
}
<?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:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<ListView
android:id="@+id/listView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
JavaではListクラスのオブジェクトを使用していく場合もあるが、Androidでは、
ArrayList型にしておかないと、ArrayAdapterの引数として使えないことに注意する必要がある。
すなわち、下記のような記載ではだめということになる。
List<String> lists = new ArrayList<>(Arrays.asList(texts));