假设一个活动有两个碎片,左边碎片包含一个edittext与一个button控件,右边碎片包含一个textview控件,试实现通过button控件,将左边edittext中的字符串迁移到右边的textview中,阐述所需步骤及关键代码
时间: 2023-06-06 12:09:11 浏览: 96
这个问题属于技术问题,可以回答。
实现步骤:
1. 在xml中定义左边碎片布局和右边碎片布局。
2. 在java代码中获取左边碎片的edittext和button控件以及右边碎片的textview控件。
3. 给button控件设置点击事件,在点击事件中获取edittext中的字符串,并将其设置到textview中。
关键代码如下:
1. 定义xml布局
```
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<fragment
android:id="@+id/left_fragment"
android:name="com.example.LeftFragment"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<fragment
android:id="@+id/right_fragment"
android:name="com.example.RightFragment"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
</LinearLayout>
```
2. 获取控件
```
// 获取左边碎片的edittext和button控件
EditText leftEditText = (EditText) leftFragment.getView().findViewById(R.id.edittext);
Button leftButton = (Button) leftFragment.getView().findViewById(R.id.button);
// 获取右边碎片的textview控件
TextView rightTextView = (TextView) rightFragment.getView().findViewById(R.id.textview);
```
3. 实现点击事件
```
leftButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String editTextStr = leftEditText.getText().toString();
rightTextView.setText(editTextStr);
}
});
```
阅读全文
相关推荐

















