我终于设法用ONE按钮创建一个SIMPLE小部件(1x1单元格)。在我的情况下(现在)祝酒。这实际上很难做到。小部件的工作方式与普通应用程序不同。
到目前为止我所有重要文件的代码:
http://paste2.org/p/2427468
问题1:
我有一个普通的按钮,有背景。我在该按钮上有一个@drawable / ... xml,它定义了正常和按下状态的不同图像。这很好地退出了。
由于在WIDGETS上不支持toggleButton我必须使用'Button',但我想要切换按钮的效果。因此,在按下按钮后,必须固定/冻结按下的状态!接下来点击正常状态应该我固定/冻结。你是怎么做到的?
问题2:
如果问题1有效:我需要对正常状态和按压状态采取不同的动作。我想降低/增加屏幕的亮度。
在我创建的应用程序中,这有效:
WindowManager.LayoutParams lp = getWindow().getAttributes();
Toast.makeText(getBaseContext(),"Low brightness",Toast.LENGTH_LONG).show();
lp.screenBrightness = 0.004F;
float BackLightValue = lp.screenBrightness;
int SysBackLightValue = (int)(BackLightValue * 255);
android.provider.Settings.System.putInt(getContentResolver(),android.provider.Settings.System.SCREEN_BRIGHTNESS,SysBackLightValue);
getWindow().setAttributes(lp);
如何在小部件中实现此功能?
我相信我差不多完成了这个小部件,但是需要关注这两个问题。
谢谢!
答案 0 :(得分:2)
不理解你的第一个问题,但对于第二个问题, 您可以创建一个没有UI的活动,并编写上述代码来设置亮度。使用意图调用此活动并在它们之间共享数据。