PDA

View Full Version : ویجت ساعت دیجیتال ..



hosseinaryai
دوشنبه 06 بهمن 1393, 13:05 عصر
سلام دوستان ..
من یه ویجت ساعت دیجیتال می خوام بنویسم .. یعنی نوشتم اما ساعتش کار نمی کنه .. می خوام ببینم مشکل از کجاست ؟
کداشم اینجوریه ..
این کد کلاسشه :

public class ExampleAppWidgetProvider extends AppWidgetProvider {
DateFormat df = new SimpleDateFormat("hh:mm:ss");

public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
final int N = appWidgetIds.length;

Log.i("ExampleWidget", "Updating widgets " + Arrays.asList(appWidgetIds));

for (int i = 0; i < N; i++) {
int appWidgetId = appWidgetIds[i];

Intent intent = new Intent(context, Home.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);

RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget1);
views.setOnClickPendingIntent(R.id.button, pendingIntent);

views.setTextViewText(R.id.widget1label, df.format(new Date()));

appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
}


و اینم کد فایل xml :


<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="294dp"
android:minHeight="72dp"
android:updatePeriodMillis="1000"
android:initialLayout="@layout/widget1">
</appwidget-provider>


و در آخر ، اینم کد لایه ایه که روی صفحه قرار میگیره :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:layout_margin="4dp">
<TextView android:id="@+id/widget1label" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:layout_width="wrap_content"/>
<Button android:text="Click Me!" android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content"/>

</LinearLayout>


البته اون دکمه زیاد برام مهم نیست .. کار هم می کنه .. ولی ساعتش شروع به حرکت نمی کنه .. چرا ؟

hosseinaryai
دوشنبه 06 بهمن 1393, 18:46 عصر
اساتید نظری ندارن ؟
البته یکم دقت کردم ، دیدم این ویجت دقیقن هر 30 دقیقه به 30 دقیقه آپدیت میشه .. یعنی همون چیزی که پیشفرض گوگله .. ولی من که توی کد زیر بهش گفتم هر ثانیه باید آپدیتش کنه .. پس چرا بازم جواب نمیده ؟


android:updatePeriodMillis="1000"