作者tga123 (叛帝)
看板AndroidDev
標題[問題] fragment要怎麼傳值給fragment
時間Fri Nov 30 07:01:48 2012
Activity只要用intent結合bundle
就能成功達到傳值的要求
但是換做是fragment好像就不適這麼容易...
我有嘗試照著網上範例去做
但好像不太行
傳值程式碼
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
View view = inflater.inflate(R.layout.templistmune, container, false);
FragmentManager DS2 = getFragmentManager();
FragmentTransaction DSE2 = DS2.beginTransaction();
Fragment DF2 = DS2.findFragmentById(R.id.frameLayout4);
if (DF2 == null) {
String title = "Fragment A";
templistview2 usermune = new templistview2(title);
DSE2.add(R.id.frameLayout4, usermune);
DSE2.addToBackStack(null);
DSE2.commit();
/////////////////////////////////////////////////////////
Bundle bundle = new Bundle();
String SAS="50";
bundle.putString("ST", SAS);
DF2.setArguments(bundle);
////////////////////////////////////////////////
}
接收值的程式碼
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
View view = inflater.inflate(R.layout.templistmune2, container,
false);
////////////////////////////////////////////////////////////////////////////////////
Bundle bundle = this.getArguments();
String myST = bundle.getString("ST", SAS);
///////////////////Error SAS cannot be resolved to a variable
/////////////////
return view;
}
有沒有版友能給些建議呢?
完全不知道該怎麼做XD
--
ボ ◢ ◥══
◢ ◥═══
◢ ◥◣ ══
◥◣◢◤◣
═ ◣◢═Vocaloi
d╮
║
◣ ◤◥ ◢◢◢▼ quetzal◤◥◥﹨◣ ◢◥◤ ◥ ▼◥ ◣◢ ║
║
● ●▼ ● ●◥ ロ ● ● ;│ ▼◥︽﹨ ◆▼◥▼﹨ ▃▃
║
◣▄ ◢◤ ◤◣▆ ◢◥ ◥
◣▃ ▉
◤ ═● ● ▌ ◤● ● ▌ ◢
ド!
║
◤◤◢ ◣
カ ████▆≡ ◤▆ ◥ ◢
◣▁ ▉
◥ ◣▄ ▉
◤ ▅▅
╰══
◣︶●═══
▊█▎◥◣══
▼ ◢/△ ◤═イ═△▅/◥══
△▅/◣ ═══
╯
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.34.127.207
1F:→ sunghau:下面的SAS有在接值的fragment裡被定義嗎? 11/30 07:39
2F:→ tga123:好像沒有orz定義式該怎麼寫呢? 11/30 08:37
3F:→ sunghau:String SAS="50"; 11/30 08:59
4F:→ sunghau:你傳值的fragment有寫 11/30 08:59
5F:→ tga123:所以我在接值的地方補一條 String SAS = null; ? 11/30 09:20
6F:→ sunghau:看你要給他什麼預設值 在bundle取值失敗的時候 11/30 09:49