簡體   English   中英

Android應用程序崩潰導致創建打開意圖

[英]Android app crashes creating opening Intent

嘗試打開“ ReadActivity”時,我的Android應用程序“電子郵件”崩潰。

在MainActivity中聲明的OpenMail()方法應啟動ReadActivity:

public void OpenMail(View v, int index) {
    String[] mail = {"x", "y", "z"};

    Intent readIntent = new Intent(this, ReadActivity.class); <-- Error occurs here

    readIntent.putExtra("mail", mail);

    startActivity(readIntent);
}

該方法在ListViewAdapter中調用:

@Override
public View getView(final int position, View convertView, ViewGroup parent) {
    Holder holder = new Holder();

    View rowView = inflater.inflate(R.layout.listview_item, null);

    holder.imageView = (ImageView) rowView.findViewById(R.id.imageView);
    holder.txvSenderMail = (TextView) rowView.findViewById(R.id.txvSender);
    holder.txvSubject = (TextView) rowView.findViewById(R.id.txvSubject);

    holder.imageView.setImageResource(ImageID[position]);
    holder.txvSenderMail.setText(SenderMail[position]);
    holder.txvSubject.setText(Subject[position]);

    rowView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            new MainActivity().OpenMail(v, position);
        }
    });

    return rowView;
}

錯誤:java.lang.NullPointerException:嘗試在空對象引用上調用虛擬方法“ android.app.ActivityThread $ ApplicationThread android.app.ActivityThread.getApplicationThread()”

我希望有人能幫助我! 謝謝!

您實際上是在嘗試創建新的MainActivity時

new MainActivity().OpenMail(v, context, position);

如果您目前在MainActivity課上,我想您想做這樣的事情:

getActivity().OpenMail(v, context, position);

當然,不要忘記將ReadActivity添加到AndroidManifest

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM