में संसाधन आईडी # 0x0 है, मेरे पास RecyclerView
है, और इसके एडाप्टर में, मैंने OnLongClickListener
के समान कुछ बनाया है, जिसे मैं भ्रम से बचने के लिए OnEntryLongClickListener
पर कॉल कर रहा हूं।
मैं विभिन्न कार्यों के लिए सूची आइटम के साथ एक संवाद प्रदर्शित करने के लिए एक AlertDialog
उपयोग कर रहा हूँ। हालांकि, मैं निम्न त्रुटि हो रही है:
adapter.setOnEntryLongClickListener(new RVAdapter.OnEntryLongClickListener() {
@Override
public void onEntryLongClick(View view, int position) {
final MiniEntry thisEntry = entryList.get(position);
AlertDialog.Builder builder = new AlertDialog.Builder(getBaseContext());
builder.setTitle(thisEntry.getEntryName()););
builder.setItems(R.array.quickActions, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// Other code here
}
});
AlertDialog alert = builder.create(); // The error log points to this line
alert.show();
}
});
mRecyclerView.setAdapter(adapter);
साथ ही एक्सएमएल मैं सरणी के लिए उपयोग कर रहा हूँ:
<string-array name="quickActions">
<item>Add to Favourites</item>
<item>More information</item>
</string-array>
E/AndroidRuntime: android.content.res.Resources$NotFoundException: Resource ID #0x0
at android.content.res.Resources.getValue(Resources.java:2345)
at android.content.res.Resources.loadXmlResourceParser(Resources.java:3910)
at android.content.res.Resources.getLayout(Resources.java:2161)
at android.view.LayoutInflater.inflate(LayoutInflater.java:413)
at android.view.LayoutInflater.inflate(LayoutInflater.java:366)
at android.support.v7.app.AlertController$AlertParams.createListView(AlertController.java:734)
at android.support.v7.app.AlertController$AlertParams.apply(AlertController.java:711)
at android.support.v7.app.AlertDialog$Builder.create(AlertDialog.java:883)
at com.mycompany.myapp.ThisActivity$2.onEntryLongClick(ThisActivity.java:135)
at com.mycompany.myapp.adapter.RVAdapter$RVViewHolder.onLongClick(RVAdapter.java:41)
at android.view.View.performLongClick(View.java:5236)
नीचे प्रासंगिक कोड मैं का उपयोग कर रहा है
मुझे यकीन है कि अगर यह मायने रखती है नहीं कर रहा हूँ, लेकिन मैं android.support.v7.app.AlertDialog
से AlertDialog
(v7 समर्थन लाइब्रेरी से) का आयात कर रहा हूँ।
मैं कैसे इस समस्या को हल कर सकते हैं?
बदलें 'getBaseContext()' वर्तमान गतिविधि उदाहरण के लिए 'AlertDialog.Builder' इन्स्टेन्शियशन में। उदाहरण के लिए, 'नया अलर्टडिअलॉग.बिल्डर (यह एक्टिविटी.थिस) '। –
@ माइकएम। यह काम किया! क्या आप इसे एक उत्तर के रूप में पोस्ट कर सकते हैं और * समझाएं कि समस्या को हल क्यों किया गया है - धन्यवाद। –