Bên trong OnClickListener, tôi không thể truy cập hầu hết các biến "bên ngoài" phạm vi, như sau:
findViewById(R.id.Button01).setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
Intent mainApps = new Intent(Intent.ACTION_MAIN);
mainApps.addCategory(Intent.CATEGORY_LAUNCHER);
List<ActivityInfo> activities = this.getPackageManager().queryIntentActivities(mainApps, 0);
/*
Intent intent = new Intent("com.sygic.drive/com.sygic/drive/.SygicDriveActivity");
startActivity(intent);*/
}
});
trong ví dụ này, tôi cần tải PacketManager và tôi không thể lấy nó vì tôi không có sẵn Ngữ cảnh bên trong OnClickListener.
Tôi có thể tạo một tham chiếu tĩnh bên ngoài và sử dụng nó bên trong, nhưng điều đó có chính xác không? Có vẻ kỳ lạ khi phải làm điều đó mọi lúc?