san*_*one 15 android clickable
我们android:clickable什么时候应该在XML中使用?我们应该吗?
这种XML声明和代码内声明之间有什么区别myButton.setOnClickListener吗?我已经阅读了文档,但我找不到何时以及为什么要使用此属性.
PS.我正在实施一个广告SDK并发现他们的开发人员正在使用android:clickable它WebView,我很好奇为什么他们使用它.
正如文档所述,据我所知:
clickable- 定义此视图是否对单击事件做出反应.必须是布尔值,"true"或"false".
因此,例如,如果您只是声明一个Webview或View在您的内部layout.xml并尝试设置OnClickListener此视图,OnClick则除非您指定该属性,否则不会触发该事件:
android:clickable=true
Run Code Online (Sandbox Code Playgroud)
clickable 当您需要一个视图来消耗点击量以便它们不会转到顶视图下方的视图时,这似乎很有用。
例如,我有一个在特定时间FrameLayout显示在底层证券RelativeLayout上的。当用户点击底层时EditText,焦点将转移到那个EditText。当FrameLayout仍然显示时真的很烦人。现在用户不知道为什么会弹出键盘或他们在何处打字。
当我clickable="true"在 中设置时FrameLayout,用户不会再意外单击基础EditText字段。
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
...>
<EditText>
<EditText>
<EditText>
<!-- FrameLayout with grayed-out background. -->
<FrameLayout
android:id="@+id/sometimes_visible_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#80808080"
android:clickable="true"
android:visibility="gone"
android:focusable="true"
...>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
...>
<View>
<View>
</LinearLayout>
</FrameLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14950 次 |
| 最近记录: |