【问题标题】:Android: better to use a boolean?Android:最好使用布尔值?
【发布时间】:2016-09-21 03:14:30
【问题描述】:

我有一个 LongClick 方法可以启动 Fragment 并且工作正常:

@Override
public void onItemLongClick(int position, View view) {

    Bundle bundle = new Bundle();
    bundle.putInt("itemPosition",position);        
    android.app.FragmentManager fm = getFragmentManager();
    DeleteCFragment delCDialog = new DeleteCFragment();
    delCDialog.setArguments(bundle);
    delCDialog.show(fm,"delcardview dialog");
}

用这样的布尔值设置方法有什么速度或其他优势吗?

@Override
public boolean onItemLongClick(int position, View view) {

    Bundle bundle = new Bundle();
    bundle.putInt("itemPosition",position);        
    android.app.FragmentManager fm = getFragmentManager();
    DeleteCFragment delCDialog = new DeleteCFragment();
    delCDialog.setArguments(bundle);
    delCDialog.show(fm,"delcardview dialog");
    return true;
}

【问题讨论】:

  • 在第一种情况下,您必须返回布尔值作为函数 rerunning boolean
  • @Veener 嗨,我理解 return true 与 return false 的布尔值。我要确定是使用布尔值(第二个示例)还是只运行显示的第一个示例而不使用布尔值。

标签: android methods boolean


【解决方案1】:

官方文档说:

如果回调消耗了长按,则返回 true,否则返回 false

https://developer.android.com/reference/android/widget/AdapterView.OnItemLongClickListener.html

【讨论】:

  • 是的,但是上面显示的第一个示例在没有任何布尔值的情况下运行良好。我正在尝试确定是使用不带布尔值的第一个示例还是使用带布尔值的第二个示例。
  • API 文档建议返回布尔值,因此您应该遵循它。选项 #2。
  • 如果您的视图有其他监听器,如 onClickListener 或 onTouchListener,您需要使用布尔返回来验证 longClick 事件是否发生。否则抽象方法是可以的。
  • @Andres Vasquez Agramont 啊,这很有道理。回答赞成并接受,干杯。
猜你喜欢
  • 1970-01-01
  • 2011-04-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-23
  • 2013-07-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多