-1
私のリサイクラビューの行をクリックして別のアクティビティを開始すると、次のようなメッセージが表示されます。例外が発生します。新しいアクティビティの開始時に例外が発生する
1:24:40.285 6380-6380/testing.theo.androidtestproject E/AndroidRuntime: FATAL EXCEPTION: main Process: testing.theo.androidtestproject, PID: 6380
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getPackageName()' on a null object reference at android.content.ComponentName.<init>(ComponentName.java:77)
at android.content.Intent.<init>(Intent.java:4358)
atesting.theo.androidtestproject.adapter.MySQLAdapter$1.onClick(MySQLAdapter.java:77)
私は私のアダプタ内の新しいアクティビティを起動する意図を初期化します。
私のアクティビティ内でアダプタを初期化します。
public class NoInternetActivity extends AppCompatActivity {
RecyclerView myList;
LinearLayoutManager layout;
MySQLAdapter myAdapter;
Activity a;
DatabaseHandler dba = new DatabaseHandler(NoInternetActivity.this);
private ArrayList<SQLiteModel> myarr = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_no_internet);
myList = (RecyclerView) findViewById(R.id.recycler_view);
layout = new LinearLayoutManager(this);
myList.setLayoutManager(layout);
myAdapter = new MySQLAdapter(a,myarr);
myList.setAdapter(myAdapter);
fetchDataFromDB();
}
public void fetchDataFromDB() {
dba = new DatabaseHandler(getApplicationContext());
ArrayList<SQLiteModel> membersDB = dba.getMembersDetails();
for(int i=0; i<membersDB.size();i++){
int id = membersDB.get(i).getSqliteId();
String fname = membersDB.get(i).getSqliteFirstName();
String lname = membersDB.get(i).getSqliteSecondName();
String role = membersDB.get(i).getSqliteRole();
String image = membersDB.get(i).getSqliteImage();
//String desc = moviesFromDB.get(i).getContent();
SQLiteModel f = new SQLiteModel();
f.setSqliteId(id);
f.setSqliteFirstName(fname);
f.setSqliteSecondName(lname);
f.setSqliteRole(role);
f.setSqliteImage(image);
myarr.add(f);
}
dba.close();
}
}
これに関するアイデアはありますか?私はSQLiteからすべてのデータを取得します。ありがとう、
Theo。
アダプターに渡すコンテキストは何ですか?アダプタ初期化ステートメントを投稿できますか? – Raghavendra
アダプタを初期化するコードを追加しました。 – Theo
私はアクティビティと配列リストを渡します。 – Theo