我有一个app程式,采用fragment做分页、tabhost做切换、程式码都独立在各fragment
Main Activity
#这边是fragment根tabhost的运用方式。
tabHost=(FragmentTabHost) findViewById(R.id.tabHost);
tabHost.setup(this, getSupportFragmentManager(),
android.R.id.tabcontent);
Resources res= getResources();
TabHost.TabSpec tab1= tabHost.newTabSpec("tab1");
TabHost.TabSpec tab2= tabHost.newTabSpec("tab2");
TabHost.TabSpec tab3= tabHost.newTabSpec("tab3");
tab1.setIndicator(res.getString(R.string.tab1String),null);
tab2.setIndicator(res.getString(R.string.tab2String),null);
tab3.setIndicator(res.getString(R.string.tab3String),null);
tabHost.addTab(tab1, fragment1.class, null);
tabHost.addTab(tab2, fragment2.class, null);
tabHost.addTab(tab3, fragment3.class, null);
Java Class fragment1
内有几个功能有写到 ↓↓↓↓↓↓↓↓↓↓↓↓
三个按钮按下后各别对,EditText变更EditText.setEnable或字型字体颜色
#listview使用这个方式可以让listview更新
当listview内数值有变化时,直接呼叫下面两行进行更新与显示
listview_fragment1.setAdapter(adapter_tab1);
((BaseAdapter) listview_fragment1.getAdapter()).notifyDataSetChanged();
布局档
activity_main fragment_layout_1 #内含下面四项
Btn_Text1、Btn_Text2、Btn_Text3
EditText1、EditText2、EditText3
listview_fragment1
但是我将按钮后变更EditText.setEnable跟字型字体的函式,采用onClick(View v)呼叫
同时在onCreateView内宣告,所有的EditText、Button、ListView
只有程式开启的第一次会有效果,第二次按钮就没有变更的效果了
把跟set相关的指令#掉之后,
按钮的功能都可以正常执行,就是可以计算跟读写DB,但是加上set做按钮控制
就不会更新按钮的状态了
按钮1 => disable text1、text1变灰变小、disable btn1
按钮2 => disable text2、text2变红变大、disable btn2
按钮3 => enable text1 text2 btn1 btn2、disable btn3、全部按钮跟text变回白色大字
第一次按下按钮1会关掉按钮1同时会变灰变小,
但是再按下按钮3,按钮1不会开启,颜色也不会变回白色大字
想请教一下fragment 的用法里面有没有像listview可以呼叫notifyDataSetChanged();
来让EditText、Button的状态跟设定进行更新显示?
感谢各位前辈们的指教,
一个刚从SE被逼着转APP Coding的可怜责任制IT...