[英]Object to Json with Gson | ANDROID
我需要將此對象轉換為Json字符串,但是如果對象聲明為MainActivity類,則無法。 如果我在函數中聲明了它,它將起作用。
public class MainActivity extends AppCompatActivity {
public class Boton implements Serializable{
public Button bt;
public String path;
public String fname;
/*Boton(Button bt, String path, String fname){
this.bt = bt;
this.path = path;
this.fname = fname;
}*/
}
Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
load_bts();
}
public void load_bts(){
Button bt = new Button(this);
Boton cbt = new Boton();
cbt.bt = bt;
cbt.path = "QUESO";
cbt.fname = "";
Gson gson = new Gson();
String json = gson.toJson(cbt);
}
如果我這樣做,該應用程序將運行:
public void load_bts() {
class Boton implements Serializable {
public Button bt;
public String path;
public String fname;
}
Button bt = new Button(this);
Boton cbt = new Boton();
cbt.bt = bt;
cbt.path = "QUESO";
cbt.fname = "";
Gson gson = new Gson();
String json = gson.toJson(cbt);
}
您不能序列化一個按鈕。 兩種方法都不起作用。 即使使用第二種方法,json變量也為null。
android中的按鈕不可序列化。
但是您可以序列化按鈕的元數據(屬性),例如textsize,textcolor等。 然后在創建按鈕時使用這些數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.