09-08 01:52:58.997: E/AndroidRuntime(737): Uncaught handler: thread main exiting due to uncaught exception
09-08 01:52:59.007: E/AndroidRuntime(737): java.lang.NullPointerException
09-08 01:52:59.007: E/AndroidRuntime(737):  at android.view.View.showContextMenu(View.java:2380)
09-08 01:52:59.007: E/AndroidRuntime(737):  at android.view.View.performLongClick(View.java:2366)
09-08 01:52:59.007: E/AndroidRuntime(737):  at android.widget.TextView.performLongClick(TextView.java:7230)
09-08 01:52:59.007: E/AndroidRuntime(737):  at android.view.View$CheckForLongPress.run(View.java:8312)
09-08 01:52:59.007: E/AndroidRuntime(737):  at android.os.Handler.handleCallback(Handler.java:587)
09-08 01:52:59.007: E/AndroidRuntime(737):  at android.os.Handler.dispatchMessage(Handler.java:92)
09-08 01:52:59.007: E/AndroidRuntime(737):  at android.os.Looper.loop(Looper.java:123)
09-08 01:52:59.007: E/AndroidRuntime(737):  at android.app.ActivityThread.main(ActivityThread.java:4203)
09-08 01:52:59.007: E/AndroidRuntime(737):  at java.lang.reflect.Method.invokeNative(Native Method)
09-08 01:52:59.007: E/AndroidRuntime(737):  at java.lang.reflect.Method.invoke(Method.java:521)
09-08 01:52:59.007: E/AndroidRuntime(737):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
09-08 01:52:59.007: E/AndroidRuntime(737):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
09-08 01:52:59.007: E/AndroidRuntime(737):  at dalvik.system.NativeStart.main(Native Method)上面的错误信息来自:我本想要实现,长按一个按钮,该按钮被删除,但是不知道为何老是报上述错误。代码:
public class RedirectActivity extends Activity {

Button button = null;
Button button1 = null;
LinearLayout linearLayout = null;
Bundle saved = null;
boolean flag;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        this.saved = savedInstanceState;
        button1 = (Button)findViewById(R.id.button1);
        linearLayout = (LinearLayout)findViewById(R.id.layout);
        button = new Button(this);
        button.setId(R.id.button2+1);
        button.setText("add one button");
        button.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
       // linearLayout.addView(button);
        linearLayout.addView(button, 1);
        button1.setOnLongClickListener(new View.OnLongClickListener() {

public boolean onLongClick(View v) {
// ok();

linearLayout.removeView(button1);
return false;
}
});
}
}

解决方案 »

  1.   

    button报了空指针异常,楼主把button.setId(R.id.button2+1);这句代码去掉
      

  2.   

    希望大家多多发表自己的看法和意见,现在还有一个问题就是:在长按某个控件时的监听事件中的方法onLongClick()方法的返回值时Boolean类型的,大家能不能说说返回true和返回FALSE分别是什么意思啊,谢谢啦
      

  3.   

    把button设置为GONE可以不。
    true和flase表示事件是否被消耗,
    http://blog.csdn.net/ddna/article/details/5451722  看看这篇文章