【发布时间】:2019-01-10 18:14:20
【问题描述】:
我正在构建一个表情包生成器应用。它有2 fragments。
第一个片段在下面有2 TextViews 和an ImageView。
第二个片段有2 EditTexts 和2 Buttons。
第一个可点击片段中的 ImageView 有一个占位符图像。
1- 如果未选择其他图像,我想将第二个片段中提到的视图的可见性更改为
gone2- 我想通过检查可绘制文件的名称来做到这一点。
我被告知我应该为此使用接口。
如何使用界面下单?
这是我在同一个应用程序中使用的界面示例。我想知道该怎么做。
public class BottomControlsFragment extends Fragment {
EditText topEditText, bottomEditText;
Button btnCreate, btnReset;
BottomControlsListener activityCommander;
public interface BottomControlsListener{ void createMeme(String top, String bottom);}
@Override
public void onAttach(Context context) {
super.onAttach(context);
try{activityCommander = (BottomControlsListener) context;}
catch (ClassCastException e){throw new ClassCastException(context.toString());}
}
public class MainActivity extends AppCompatActivity implements BottomControlsFragment.BottomControlsListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public void createMeme(String top, String bottom) {
TopImageFragment topImageFragment = (TopImageFragment)getSupportFragmentManager().findFragmentById(R.id.fragment1);
topImageFragment.setMemeText(top, bottom);
}
}
public class TopImageFragment extends Fragment {
...
public void setMemeText(String top, String bottom){
topTextView.setText(top);
bottomTextView.setText(bottom);
}
...
}
【问题讨论】:
-
这些片段是否同时可见?还是用第一个替换第二个?
-
它们同时可见。一个是 ImageView 持有者,另一个是为 Image 添加标题的 EditTexts 和 Buttons。
标签: android android-fragments fragment communication