【问题标题】:Fragment onClick call method片段 onClick 调用方法
【发布时间】:2019-05-09 01:10:12
【问题描述】:

当我单击片段中的任意位置时,我想调用方法onClickTest

活动布局:

<fragment
    android:id="@+id/fragment"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:layout_width="match_parent"
    android:layout_height="160dp"
    android:onClick="onClickTest"
    app:layout_constraintTop_toTopOf="parent" />

对应activity中的方法:

public void onClickTest(View view) {
    Log.d(TAG, "onClickTest");
}

问题是当我点击片段时该方法永远不会被调用。我做错了什么?

【问题讨论】:

标签: java android


【解决方案1】:

您可以为保存片段的框架布局提供 onClickListener。

frameLayout.setOnClickListener(new View.onClickListener{
@Override
public abstract void onClick (View v){
//Your action
}
});

【讨论】:

  • 所以不能在&lt;fragment&gt;标签内使用android:onClick
  • 不,fragment 没有扩展 View 类
【解决方案2】:

定义 onClick 你的活动:

YourFragment mFragment;

public void onClickTest(View view) {
   mFragment.onClickTest(view);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-17
    相关资源
    最近更新 更多