Как создать обратный совместимый виджет приложений подкачки Android?

У меня возникли проблемы с поиском каких-либо учебников о том, как создать виджет приложения для подкачки, например, те, что были найдены в Facebook, Twitter и FriendCaster.

Я мог бы использовать новые Android 3.0 + инструменты с адаптером, однако это было бы трудно проверить, поскольку у меня нет устройств, и мой компьютер тоже не является.

Это можно сделать, предоставив вашему appwidget состояние, которое определяет страницу, отображаемую в настоящее время. И назначьте трансляцию кнопкам для изменения состояния.

  1. Отправляйте трансляцию при нажатии кнопок с помощью PendingIntent .
  2. Попросите приемника прослушать трансляцию и следить за состоянием (страница)
  3. Обновите приложение в зависимости от текущего состояния

Вот пример неполного кода:

RemoteViews remoteViews = new RemoteViews(mContext.getPackageName(), R.layout.widget_weather); // update appwidget remoteviews depending on state (ie which page to show) remoteViews = populateViews(remoteViews, mState); // set next button Intent intent = new Intent(MYBROADCAST_NEXT); PendingIntent pendingIntent = PendingIntent.getBroadcast(context, requestCode, intent, flags); remoteViews.setOnClickPendingIntent(R.id.appwidget_btn_next, pendingIntent); // set prev button intent = new Intent(MYBROADCAST_PREV); pendingIntent = PendingIntent.getBroadcast(context, requestCode, intent, flags); remoteView.setOnClickPendingIntent(R.id.appwidget_btn_prev, pendingIntent); // update the AppWidget ... 

Надеюсь, это поможет достичь того, чего вы хотите.

Вы можете использовать пакет совместимости, он совместим с обратной связью. Минимальный уровень API – 4, это Android 1.6

http://developer.android.com/sdk/compatibility-library.html

Используйте ViewPager, для этого есть много примеров. http://android-developers.blogspot.com/2011/08/horizontal-view-swiping-with-viewpager.html