Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 检查当前亮度_Java_Android_Togglebutton_Brightness - Fatal编程技术网

Java 检查当前亮度

Java 检查当前亮度,java,android,togglebutton,brightness,Java,Android,Togglebutton,Brightness,我不能让我的代码工作。。我想检查当前亮度,如果在authomatic中,我的切换按钮将被选中,否则不会。我解释;这就是我试图检查亮度的方法: public static final int SCREEN_BRIGHTNESS_MODE_AUTOMATIC = 1; --- --- int curBrightnessValue = android.provider.Settings.System.getInt(getActivity().getContentResolver(),

我不能让我的代码工作。。我想检查当前亮度,如果在authomatic中,我的切换按钮将被选中,否则不会。我解释;这就是我试图检查亮度的方法:

public static final int SCREEN_BRIGHTNESS_MODE_AUTOMATIC = 1;
---
---


int curBrightnessValue = android.provider.Settings.System.getInt(getActivity().getContentResolver(), 
                android.provider.Settings.System.SCREEN_BRIGHTNESS,-1);

        //
        if (curBrightnessValue == 1){
            autoBrightToggle.setEnabled(true);
        } else {
            autoBrightToggle.setEnabled(false);
        }
当然,还有切换:

autoBrightToggle = (ToggleButton)v.findViewById(R.id.luminosita);
        autoBrightToggle.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                if (autoBrightToggle.isChecked()) {
                    setAutoBrightness(true);
                } else {
                    setAutoBrightness(false);
                }
            }
        });
---
---
---
void setAutoBrightness(boolean value) {
        if (value) {
            Settings.System.putInt(getActivity().getContentResolver(), SCREEN_BRIGHTNESS_MODE, SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
        } else {
            Settings.System.putInt(getActivity().getContentResolver(), SCREEN_BRIGHTNESS_MODE, SCREEN_BRIGHTNESS_MODE_MANUAL);
        }
    }
但不起作用。它和这只logCat相撞了

12-09 22:03:35.960: E/AndroidRuntime(15136): FATAL EXCEPTION: main
12-09 22:03:35.960: E/AndroidRuntime(15136): Process: com.dd.androreboot, PID: 15136
12-09 22:03:35.960: E/AndroidRuntime(15136): java.lang.NullPointerException
12-09 22:03:35.960: E/AndroidRuntime(15136):    at com.dd.androreboot.devicecontrolfragment.onCreateView(devicecontrolfragment.java:78)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at android.app.Fragment.performCreateView(Fragment.java:1700)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:890)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1062)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at android.app.BackStackRecord.run(BackStackRecord.java:684)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1447)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at android.app.FragmentManagerImpl$1.run(FragmentManager.java:443)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at android.os.Handler.handleCallback(Handler.java:733)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at android.os.Handler.dispatchMessage(Handler.java:95)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at android.os.Looper.loop(Looper.java:136)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at android.app.ActivityThread.main(ActivityThread.java:5017)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at java.lang.reflect.Method.invokeNative(Native Method)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at java.lang.reflect.Method.invoke(Method.java:515)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
12-09 22:03:35.960: E/AndroidRuntime(15136):    at dalvik.system.NativeStart.main(Native Method)

David请提供更多信息或验证devicecontrolfragment.java中的onCreateView是否存在空值,这就是造成问题的原因。devicecontrolfragment.java:第78行
另请注意,还要确保您拥有此操作的相关权限。

devicecontrolfragment.java中的第78行是什么?这是:autoBrightToggle.setEnabledfalse;这意味着autoBrightToggle为空。但你显然已经知道了。您可能已经检查过luminosita是否存在于v的层次结构中,其中v可能来自xml布局。。我的意思是,我的想法似乎是正确的。。还是不?还有别的办法吗?检查亮度模式。。如果自动,则检查切换,否则不。。。你知道我怎么做吗?你能帮我吗?权限可以。第78行是:autoBrightToggle.setEnabledfalse;。。我不知道,我建议如下:在您尝试对系统进行任何更改之前,请验证您的UI是否正常工作。对系统方法调用进行注释,并验证您没有犯任何UI错误。接下来,请尝试使用日志或其他方法验证您从系统中获得的所需信息是否符合代码中的预期。