国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Fragment與Acvitity的對向傳值問題

2019-11-08 00:38:56
字體:
來源:轉載
供稿:網友
一、由Acvitity向Fragment傳值思路步驟:1、在Acvitity的java代碼中實例化對應acvitity布局文件中的控件 在Acvitity的xml布局文件中添加fragment布局和控件2、新建Fragment實例,在布局文件中給需要接收傳值的控件添加id3、在Fragment的Java代碼中實例化自身布局文件中的ID,并且給接收傳值的控件添加一個接收數據的方法 public void intiturn(String meg){ btn.setText(meg); }4、在Acvitity中給傳值或者設置的按鈕添加傳值的點擊事件,在點擊事件的匿名內部類中先獲得需要傳遞的值的內容,然后拿到Fragment的傳遞對向的實例 BlankFragment fg= (BlankFragment) getSupportFragmentManager().findFragmentById(R.id.fg);5、用拿到的對象fg調用該對象的接收數據的方法fg.intiturn(meg);**********************************************************************Acvitity中Java代碼: public class MainActivity extends AppCompatActivity { PRivate EditText et_content; private Button btn_turn; private String meg; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_content= (EditText) findViewById(R.id.et_content); btn_turn= (Button) findViewById(R.id.btn_turn); btn_turn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { meg=et_content.getText().toString();//點擊按鈕的時候先取得輸入的文本內容, //拿到fragment的實例 傳值 BlankFragment fg= (BlankFragment) getSupportFragmentManager().findFragmentById(R.id.fg); fg.intiturn(meg);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&acvitity.xml代碼: <EditText android:id="@+id/et_content" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="請輸入內容" android:textSize="30sp"/> <Button android:id="@+id/btn_turn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="傳遞" android:textSize="25sp"/> <fragment android:id="@+id/fg" android:name="com.example.administrator.fragmentapplication.BlankFragment" android:layout_width="match_parent" android:layout_height="match_parent" tools:layout="@layout/fragment_blank"> </fragment>&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&Fragment中Java代碼:public class BlankFragment extends Fragment { private Button btn; public void intiturn(String meg){ btn.setText(meg); } 二、由Fragment向Acvitity傳值:思路步驟:1、在acvitity.xml文件中定義接收值的控件并為其添加id和fragment布局樣式,并且給fragment布局添加id或者tag2、在Acvitity的Java代碼中實例化接收值的控件并為控件添加接收數據的方法 public void setText(String msg){ tv.setText(msg);3、在fragment.xml中添加可以傳值的控件,和設置傳值的控件,并為他們添加id4、在Fragment的Java代碼中實例化Acvitity的對象,實例化xml布局文件中的控件,給設置按鈕添加傳值的點擊事件activity= (Fg2Activity) getActivity();//獲得對象,調用方法 String content=et_content.getText().toString(); activity.setText(content);acvitity.xml: <TextView android:id="@+id/tv" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="通訊內容" android:textSize="25sp" /> <fragment android:id="@+id/fg" android:name="com.example.administrator.fragmentapplication.DataFragment" android:layout_width="match_parent" android:layout_height="match_parent"/>Acvitity.Javapublic class Fg2Activity extends AppCompatActivity { private TextView tv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_fg2); tv= (TextView) findViewById(R.id.tv); } public void setText(String msg){ tv.setText(msg);fragment.xml <EditText android:id="@+id/et_content" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="輸入內容" /> <Button android:id="@+id/btn_set" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="設置" />Fragment.java public class Fg2Activity extends AppCompatActivity { private TextView tv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_fg2); tv= (TextView) findViewById(R.id.tv); } public void setText(String msg){ tv.setText(msg);
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 繁峙县| 同心县| 宕昌县| 佛坪县| 庐江县| 喀喇沁旗| 公安县| 德兴市| 庆安县| 溆浦县| 北安市| 柳江县| 大连市| 大丰市| 宣化县| 海门市| 卓尼县| 盈江县| 安康市| 泰州市| 镇原县| 绥中县| 晋城| 新昌县| 平南县| 瑞昌市| 宾阳县| 嘉兴市| 河北省| 玛纳斯县| 云梦县| 商南县| 阿克陶县| 旺苍县| 娄底市| 石景山区| 拉萨市| 祥云县| 富阳市| 黎城县| 宣化县|