pen*_*ang 3 android android-widget
我想在主屏幕中放置一个textView,我需要选框效果
public class MainWidget extends AppWidgetProvider {
int a;
RemoteViews remoteViews;
AppWidgetManager appWidgetManager;
ComponentName thisWidget;
String[] s={"woddfdfdfdfdfdffffffffffffffffffffffffffffffff","dd","ddd","ffff"};
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
Timer timer = new Timer();
timer.scheduleAtFixedRate(new WlanTimer(context, appWidgetManager), 100, 50000);
}
private class WlanTimer extends TimerTask {
RemoteViews remoteViews;
AppWidgetManager appWidgetManager;
ComponentName thisWidget;
public WlanTimer(Context context, AppWidgetManager appWidgetManager) {
this.appWidgetManager = appWidgetManager;
remoteViews = new RemoteViews(context.getPackageName(), R.layout.marketwidget_main);
thisWidget = new ComponentName(context, MainWidget.class);
}
@Override
public void run() {
a=(int) (Math.random()*3);
remoteViews.setTextViewText(R.id.TextView_marketwidget_main_marketmessage,s[a]);
appWidgetManager.updateAppWidget(thisWidget, remoteViews);
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果我使用s [0]而不是s [a],它不会运行,只显示"woddfdf".
我的textView xml是:
<TextView android:id="@+id/TextView_marketwidget_main_marketmessage"
android:maxLines="1" android:focusable="true"
android:ellipsize="marquee"
android:inputType="text"
android:focusableInTouchMode="true" android:marqueeRepeatLimit="marquee_forever" android:textColor="#ffffff" android:background="@android:color/transparent" android:layout_width="80dip" android:layout_height="20dip"></TextView>
Run Code Online (Sandbox Code Playgroud)
我从你的问题中得到的是,你想在TextView中显示滚动字幕效果吗?如果我是对的,请执行以下操作.
android:ellipsize="marquee"在TextView布局文件(XML)中的元素中设置.然后,在Activity的onCreate()方法中,添加该行textView.setSelected(true);.
注意:将名称textView替换为TextView的名称.
恢复任何查询.
| 归档时间: |
|
| 查看次数: |
7889 次 |
| 最近记录: |