Monday, March 3, 2014

android listview error Press


Will Daniel, now has his own encounter a problem, get yourself an example of a contact's listview, but the press, then the error, first put the code,
 
public class ListviewtestActivity extends Activity
@ Override
protected void onCreate (Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
setContentView (R.layout.activity_listviewtest);
final List > listItems = get_contacts (ListviewtestActivity.this);
BaseAdapter baseAdapter = new BaseAdapter () {

@ Override
public View getView (int position, View convertView, ViewGroup parent) {
/ / TODO Auto-generated method stub

Map map = listItems.get (position);
LinearLayout linearLayout = new LinearLayout (ListviewtestActivity.this);
linearLayout.setOrientation (0);

LinearLayout linearLayout_t = new LinearLayout (ListviewtestActivity.this);
linearLayout_t.setOrientation (1);
TextView nameTextView = new TextView (ListviewtestActivity.this);
nameTextView.setTextSize (20);
nameTextView.setTextColor (Color.RED);
TextView numberTextView = new TextView (ListviewtestActivity.this);
numberTextView.setTextSize (15);
numberTextView.setTextColor (Color.BLUE);
linearLayout_t.addView (nameTextView);
linearLayout_t.addView (numberTextView);

LinearLayout linearLayout_c = new LinearLayout (ListviewtestActivity.this);
linearLayout_c.setGravity (0x05);
CheckBox selectCheckBox = new CheckBox (ListviewtestActivity.this);
selectCheckBox.setClickable (false);
selectCheckBox.setFocusable (false);
selectCheckBox.setFocusableInTouchMode (false);
linearLayout_c.addView (selectCheckBox);

linearLayout.addView (linearLayout_t);
linearLayout.addView (linearLayout_c);

nameTextView.setText (map.get ("name") toString ().);
numberTextView.setText (map.get ("number") toString ().);
if (map.get ("selected"). toString (). equals ("0")) {
selectCheckBox.setChecked (false);
} Else {
selectCheckBox.setChecked (true);
}
Log.v ("caicai", "getView_");
return linearLayout;
}

@ Override
public long getItemId (int position) {
/ / TODO Auto-generated method stub
Log.v ("caicai", "getItemId" + position);
return position;
}

@ Override
public Object getItem (int position) {
/ / TODO Auto-generated method stub
Log.v ("caicai", "getItem");
return listItems.get (position);
}

@ Override
public int getCount () {
/ / TODO Auto-generated method stub
Log.v ("caicai", "getCount" + listItems.size ());
return listItems.size ();
}
};
ListView listView = (ListView) findViewById (R.id.listview_select_contact_test);
listView.setAdapter (baseAdapter);
/ *
listView.setOnItemClickListener (new OnItemClickListener () {
@ Override
public void onItemClick (AdapterView parent, View view, int pasition, long id)
{
Map map = listItems.get (pasition);
Log.v ("caicai", map.get ("name") toString ().);

}
});

listView.setOnCreateContextMenuListener (new OnCreateContextMenuListener () {

public void onCreateContextMenu (ContextMenu menu, View v,
ContextMenu.ContextMenuInfo menuInfo) {
Log.v ("caicai", "setOnItemLongClickListener");
menu.add (0, 0, 0, "add");
menu.add (0, 1, 0, "delete");
menu.add (0, 2, 0, "Delete ALL");
}
}); * /
listView.setOnItemLongClickListener (new OnItemLongClickListener () {
@ Override
public boolean onItemLongClick (AdapterView arg0,
View arg1, int arg2, long arg3) {
/ / TODO Auto-generated method stub
Log.v ("caicai", "setOnItemLongClickListener");
return false;
}
});
}

Press the error log, reporting null pointer error
 FATAL EXCEPTION: main 
java.lang.NullPointerException
at com.android.internal.policy.impl.PhoneWindow $ DecorView $ ActionModeCallbackWrapper.onCreateActionMode (PhoneWindow.java: 2709)
at com.android.internal.app.ActionBarImpl $ ActionModeImpl.dispatchOnCreate (ActionBarImpl.java: 945)
at com.android.internal.app.ActionBarImpl.startActionMode (ActionBarImpl.java: 515)
at android.app.Activity.onWindowStartingActionMode (Activity.java: 4962)
at com.android.internal.policy.impl.PhoneWindow $ DecorView.startActionMode (PhoneWindow.java: 2414)
at com.android.internal.policy.impl.PhoneWindow $ DecorView.startActionModeForChild (PhoneWindow.java: 2401)
at android.view.ViewGroup.startActionModeForChild (ViewGroup.java: 654)
at android.view.ViewGroup.startActionModeForChild (ViewGroup.java: 654)
at android.view.ViewGroup.startActionModeForChild (ViewGroup.java: 654)
at android.view.View.startActionMode (View.java: 4381)
at android.widget.AbsListView.performLongPress (AbsListView.java: 2832)
at android.widget.AbsListView $ CheckForLongPress.run (AbsListView.java: 2792)
at android.os.Handler.handleCallback (Handler.java: 725)
at android.os.Handler.dispatchMessage (Handler.java: 92)
at android.os.Looper.loop (Looper.java: 137)
at android.app.ActivityThread.main (ActivityThread.java: 5199)
at java.lang.reflect.Method.invokeNative (Native Method)
at java.lang.reflect.Method.invoke (Method.java: 511)
at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java: 797)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java: 564)
at dalvik.system.NativeStart.main (Native Method)

Please tell brother Daniel in the end is where the problem that way for a long time will not own debugging<-! Main posts under Banner (D4) -><-! Posts under the main text (D5) ->
Reply:
Reply own right, resolved, because the property is set listview inside a multiple-selection android: choiceMode = "multipleChoiceModal"
But he is still not sure why it went wrong

No comments:

Post a Comment