我在一个应用程序上工作。我不会去另一个活动。这里的代码点击箭头按钮,它将进入另一个活动`
package com.gabriel.utility;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import android.content.Context;
import android.content.Intent;
import android.graphics.Typeface;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.ToggleButton;
import com.gabriel.activity.ContactInfoActivity;
import com.gabriel.activity.ContactListActivity;
import com.gabriel.activity.GabrielApplication;
import com.gabriel.activity.R;
import com.gabriel.database.ContactCore;
import com.gabriel.database.WebMessageCore;
public class WebMessageAdapter extends ArrayAdapter<WebMessageCore>{
Context _Context;
ArrayList<WebMessageCore> _WebMsgList;
WebMessageCore _WebMsgCore;
TextView _MsgContent;
private LayoutInflater mInflater;
ImageButton Arrow;
GabrielApplication application;
public WebMessageAdapter(Context context, int resource,
ArrayList<WebMessageCore> contactList) {
super(context, resource, contactList);
_Context = context;
_WebMsgList = contactList;
mInflater = LayoutInflater.from(context);
}
public int getCount() {
return _WebMsgList.size();
}
public WebMessageCore getItem(int position) {
return _WebMsgList.get(position);
}
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.custom_row_view, null);
holder = new ViewHolder();
holder.txtName = (TextView) convertView.findViewById(R.id.name);
holder.txtmessage = (TextView) convertView
.findViewById(R.id.meassage);
holder.txtPhone = (TextView) convertView.findViewById(R.id.phone);
holder.txtdate= (TextView ) convertView.findViewById(R.id.datetime);
holder.Arrow = (ImageButton)convertView.findViewById(R.id.settingArrow);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
_WebMsgCore=_WebMsgList.get(position);
holder.txtName.setText(_WebMsgCore.getName());
holder.txtmessage.setText(_WebMsgCore.getMessage());
holder.txtPhone.setText(_WebMsgCore.getMobileNo());
Arrow.setOnClickListener( new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent newActivity = new Intent(_Context, ContactInfoActivity.class);
_Context.startActivity(newActivity);
}
});
/* Arrow.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent newActivity = new Intent(_Context, ContactInfoActivity.class);
_Context.startActivity(newActivity);
}
});*/
/*Intent intent = new Intent(_Context, ContactInfoActivity.class);
GabrielUtil.replaceContentView(application.getGroupContext(),
GBConstants.contact_info, intent);
}
});*/
String currentDateTimeString = DateFormat.getDateTimeInstance().format(new Date());
holder.txtdate.setText(currentDateTimeString);
return convertView;
/* SimpleDateFormat sdf = new SimpleDateFormat("MMM dd,yyyy HH:mm:ss.SSS a");
Date resultdate = new Date((new Date()).getTime());
String currentDateTimeString = sdf.format(resultdate);
holder.txtdate.setText(currentDateTimeString);*/
}
/*tdate = (TextView)findViewById(R.id.datetime);
Arrow = (ImageButton)findViewById(R.id.settingArrow);
String currentDateTimeString = DateFormat.getDateTimeInstance().format(new Date());
tdate.setText(currentDateTimeString);
Arrow.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent newActivity = new Intent(context, ContactInfoActivity.class);
startActivity(newActivity);
}
});
*/
//View contactView = convertView;
/*if (contactView == null) {
contactView = LayoutInflater.from(_Context).inflate(
R.layout.web_message_item, null);
}
_MsgContent = (TextView) contactView.findViewById(R.id.messageContent);
//To set text as bold
//=====================
_MsgContent.setTypeface(null, Typeface.BOLD);
_WebMsgCore = _WebMsgList.get(position);
_MsgContent.setText(_WebMsgCore.getMessage());
return contactView;
}
*/
static class ViewHolder {
ImageButton Arrow;
TextView txtName;
TextView txtmessage;
TextView txtPhone;
TextView txtdate;
}
}`
在这个代码行holder.Arrow =(ImageButton)convertView.findViewById(R.id.settingArrow); 当应用程序崩溃时。请给出一些想法。
答案 0 :(得分:0)
立即尝试..
holder.Arrow.setOnClickListener( new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent newActivity = new Intent(_Context, ContactInfoActivity.class);
_Context.startActivity(newActivity);
}
});
不仅Arrow
,还有holder.Arrow
Arrow
为null
,您的ImageButton
为holder.Arrow