我試圖在我的主要活動啓動時顯示隨機圖像5秒(我有3張圖像)。 (這是一種教程,如何使用我的應用程序和一些廣告)。但我只是想每天展示一次。我需要使用SharedPreferences嗎?這是最好的做法,是嗎?所以我發現這個:一旦活動第一次出現,如何顯示x秒的隨機圖像?
ImageView imgView = new ImageView(this);
Random rand = new Random();
int rndInt = rand.nextInt(n) + 1; // n = the number of images, that start at idx 1
String imgName = "img" + rndInt;
int id = getResources().getIdentifier(imgName, "drawable", getPackageName());
imgView.setImageResource(id);
要顯示一個隨機圖像。而這個:
public class mActivity extends Activity {
@Overrride
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(R.id.layout);
// Get current version of the app
PackageInfo packageInfo = this.getPackageManager()
.getPackageInfo(getPackageName(), 0);
int version = packageInfo.versionCode;
SharedPreferences sharedPreferences = this.getPreferences(MODE_PRIVATE);
boolean shown = sharedPreferences.getBoolean("shown_" + version, false);
ImageView imageView = (ImageView) this.findViewById(R.id.newFeature);
if(!shown) {
imageView.setVisibility(View.VISIBLE);
// "New feature" has been shown, then store the value in preferences
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.put("shown_" + version, true);
editor.commit();
} else
imageView.setVisibility(View.GONE);
}
要顯示一次應用程序更新應用程序的當前版本。我試圖將這些代碼適用於我的應用程序,但是我失敗了。我還需要圖像必須僅顯示5秒鐘並自動關閉。
嘿,這是我的一次。我現在得到這個代碼,它完美的作品:
boolean firstboot = getSharedPreferences("BOOT_PREF",MODE_PRIVATE).getBoolean("firstboot", true);
getSharedPreferences("BOOT_PREF",MODE_PRIVATE).edit().
putBoolean("firstboot", true).commit();
if(firstboot){
Intent webBrowser = new Intent(getApplicationContext(), WebBrowser.class);
// dismiss it after 5 seconds
webBrowser.putExtra("url", "http://sce.jelocalise.fr/mobile/ajax/interstitiel.php");
startActivity(webBrowser);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Intent MyIntent = new Intent(getApplicationContext(), Home.class);
startActivity(MyIntent);
}
}
}, 5000);
getSharedPreferences("BOOT_PREF",MODE_PRIVATE).edit().
putBoolean("firstboot", false).commit();
}
我現在想:有取消對我的WebView按鈕,當我點擊它,它完成了web瀏覽器的活動。問題是當我點擊取消按鈕處理程序不停止,並在5秒鐘後重新加載家庭活動(這是我知道的正常情況)。我只是想取消按鈕殺死處理程序。我試過handler.removeCallbacks方法,但我並不真正瞭解它是如何工作的。
嗨,在谷歌搜索「閃屏」,我認爲這就是你要找的,你只需要檢查一個偏好,這將有最後一次顯示和今天的時間,看看它是否已經可用 – 2013-04-26 06:58:11
這裏是你正在尋找http://stackoverflow.com/questions/15452061/android-splash-screen – 2013-04-26 07:00:24
嗨thx爲您的幫助,但我已經有一個啓動畫面。我忘了說這個。這是我第三次活動(這是我的主要),我想展示我的一些解釋和廣告(因爲我得到了其他產品)。 – 2013-04-26 07:01:10