首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

appwidget中使旋钮不能用 以及 appwidget初学指导

2012-09-13 
appwidget中使按钮不能用 以及 appwidget初学指导在 appwidget中我们可以使用button,但是却不能是button d

appwidget中使按钮不能用 以及 appwidget初学指导

在 appwidget中我们可以使用button,但是却不能是button disable 为什么呢

RemoteViews 不能控制一个button可用和不可用的状态,但是可以控制它的显示与隐藏

因为我们可以利用这个造假

<Button android:id="@+id/startbutton" android:text="Start" android:visibility="visible"></Button><Button android:id="@+id/startbutton_disabled" android:text="Start" android:clickable="false" android:textColor="#999999" android:visibility="gone"></Button> <Button android:id="@+id/stopbutton" android:text="Stop"  android:visibility="gone"></Button><Button android:id="@+id/stopbutton_disabled" android:text="Stop" android:clickable="false" android:textColor="#999999" android:visibility="visible"></Button>

?然后呢

当点击startbutton的时候

RemoteViews remoteView = new RemoteViews(context.getPackageName(), R.layout.widget);remoteView.setViewVisibility(R.id.startbutton, View.GONE);remoteView.setViewVisibility(R.id.startbutton_disabled, View.VISIBLE);remoteView.setViewVisibility(R.id.stopbutton, View.VISIBLE);remoteView.setViewVisibility(R.id.stopbutton_disabled, View.GONE);AppWidgetManager.getInstance(context).updateAppWidget(appWidgetId, remoteView);

?

当点击stop button的时候

RemoteViews remoteView = new RemoteViews(context.getPackageName(), R.layout.widget);remoteView.setViewVisibility(R.id.startbutton, View.VISIBLE);remoteView.setViewVisibility(R.id.startbutton_disabled, View.GONE);remoteView.setViewVisibility(R.id.stopbutton, View.GONE);remoteView.setViewVisibility(R.id.stopbutton_disabled, View.VISIBLE);AppWidgetManager.getInstance(context).updateAppWidget(appWidgetId, remoteView);

?

其实通过一个android:clickable="false" ,还有buuton的隐藏转换 造成了视觉的欺骗

热点排行