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);
}
}
}
필요
[0] 대신 [A], 그것은 실행되지 않는 경우에만 "woddfdf"쇼에요 쪽으로.
내 텍스트 뷰의 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>
단지 내 애플 리케이션의 관점에서이 방법은 텍스트 뷰가 천막 수 있습니다,하지만 난 화면에 appwidget로보기를 둘 때 , 그것은 마키를 가지고 있지 않다 – pengwang
이 메서드는 텍스트가 너비보다 길 때 텍스트를 스크롤한다. 그래서 더 많은 텍스트를 시도하십시오. – Mudassir
appwidget 원하는 marquee 효과가 있으므로 remoteView 같이 TextView 넣어 있지만 효과를 얻을 수 없습니다 – pengwang