在 settings.xml 中:
.....
<Switch
android:id="@+id/flmode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/textView1" />
<Switch
android:id="@+id/fmode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView2"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/textView2"/>
.....
来电弹窗:
public void showPopup(View anchorView) {
View popupView = getLayoutInflater().inflate(R.layout.settings, null);
PopupWindow popupWindow = new PopupWindow(popupView,
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
Switch flmode = (Switch) findViewById(R.id.flmode);
flmode.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener(){
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked){
}
});
Switch fmode = (Switch) findViewById(R.id.fmode);
fmode.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked){
}
});
popupWindow.setFocusable(true);
popupWindow.setBackgroundDrawable(new ColorDrawable());
int location[] = new int[2];
anchorView.getLocationOnScreen(location);
popupWindow.showAtLocation(anchorView, Gravity.NO_GRAVITY,
location[0], location[1] + anchorView.getHeight());
}
启动后出现错误:
11-15 09:26:08.302: E/AndroidRuntime(11433): FATAL EXCEPTION: main
11-15 09:26:08.302: E/AndroidRuntime(11433): java.lang.NullPointerException
11-15 09:26:08.302: E/AndroidRuntime(11433): at com.test.com.MainFirst.showPopup(MainFirst.java:507)
11-15 09:26:08.302: E/AndroidRuntime(11433): at com.test.com.MainFirst.onClick(MainFirst.java:242)
11-15 09:26:08.302: E/AndroidRuntime(11433): at android.view.View.performClick(View.java)
11-15 09:26:08.302: E/AndroidRuntime(11433): at android.view.View$PerformClick.run(View.java)
11-15 09:26:08.302: E/AndroidRuntime(11433): at android.os.Handler.handleCallback(Handler.java)
11-15 09:26:08.302: E/AndroidRuntime(11433): at android.os.Handler.dispatchMessage(Handler.java)
11-15 09:26:08.302: E/AndroidRuntime(11433): at android.os.Looper.loop(Looper.java)
11-15 09:26:08.302: E/AndroidRuntime(11433): at android.app.ActivityThread.main(ActivityThread.java)
11-15 09:26:08.302: E/AndroidRuntime(11433): at java.lang.reflect.Method.invokeNative(Native Method)
11-15 09:26:08.302: E/AndroidRuntime(11433): at java.lang.reflect.Method.invoke(Method.java:511)
11-15 09:26:08.302: E/AndroidRuntime(11433): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java)
11-15 09:26:08.302: E/AndroidRuntime(11433): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java)
11-15 09:26:08.302: E/AndroidRuntime(11433): at dalvik.system.NativeStart.main(Native Method)
出了什么问题以及如何实施?提前致谢