実現したいこと
ボタンを押すとListViewの内容をTextViewに表示されるようにしたい。
発生している問題・エラーメッセージ
・・・ボタンを押しても何も反応しない
エラーメッセージ
該当のソースコード
package com.example.listview;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import androidx.appcompat.app.AppCompatActivity;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // ListViewに表示する項目を生成 ArrayList<String> noodleList = new ArrayList<>(); noodleList.add("●月●日のお知らせ 【緊急】●日の台風について テストまであと●●日"); noodleList.add("●月●日のお知らせ"); noodleList.add("●月●日のお知らせ"); noodleList.add("●月●日のお知らせ"); noodleList.add("●月●日のお知らせ"); noodleList.add("●月●日のお知らせ"); /** * Adapterを生成 * android.R.layout.simple_list_item_1 : リストビュー自身のレイアウト。今回はAndroid標準のレイアウトを使用。 * noodleList : Adapterのコンストラクタの引数としてListViewに表示する項目のリストを渡す。 */ ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, noodleList); // idがlistのListViewを取得 final ListView listView = (ListView) findViewById(R.id.listView1); listView.setAdapter(arrayAdapter); final SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this); final ListView lv1 =(ListView) findViewById(R.id.listView1); findViewById(R.id.button3).setOnClickListener( new View.OnClickListener() { @Override public void onClick(View view) { SharedPreferences.Editor e = pref.edit(); e.putString("variable1",lv1.getAdapter().toString()); e.commit(); String s1 = pref.getString("variable1","値はありません"); //TextView.setAdapter(s1); } } ); }
}
試したこと
共有プリファレンスを使いました