[英]How do I pass in or access a value from one intent to another?
如何從一個意圖訪問另一個方法或變量?
我想從一個意圖上使用可繪制對象來做某事,但我不知道如何訪問它。 創建對象不適用於我的情況。
您需要使用Singleton。
這是一個例子
public class MyDrawable
{
//singleton
private static MyDrawable mydrawable=null;
Drawable drawable=null;
//only setDrawable creates objects
private MyDrawable(){}
private MyDrawable(Drawable drawable)
{
this.drawable = drawable;
}
public static Drawable getDrawable()
{
if(mydrawable==null)
return null;
return mydrawable.drawable;
}
public static Drawable setDrawable()
{
mydrawable =null;
mydrawable = new MyDrawable();
return mydrawable.drawable;
}
public static Drawable setDrawable(Drawable drawable)
{
mydrawable =null;
mydrawable = new MyDrawable(drawable);
return mydrawable.drawable;
}
}
設置您的可繪制
MyDrawable.setDrawable(yourDrawable); //or Drawable d = MyDrawable.setDrawable(); //d=yourDrawable;
在其他活動中獲取它
yourDrawable = MyDrawable.getDrawable();
在您當前的活動中,創建一個新的Intent:
Intent i = new Intent(getApplicationContext(), NewActivity.class);
i.putExtra("new_variable_name","value");
startActivity(i);
然后在新的活動中,檢索以下值:
Bundle extras = getIntent().getExtras();
if (extras != null) {
String value = extras.getString("new_variable_name");
}
使用此技術將變量從一個活動傳遞到另一個活動。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.