我在布局中有一个TextView,背景是一个选择器.TextView的文本设置为从HTML跨越.然后我用LinkMovementMethod设置TextView.
现在,当我点击TextView时,click事件不会发送到其父布局以触发选择器.
该如何解决?
我目前正在使用
onTouchEvent(MotionEvent event){
}
Run Code Online (Sandbox Code Playgroud)
检测用户何时按下我的glSurfaceView是否有办法检测何时进行长按.我猜我是否在开发文档中找不到多少,那么它将是某种方法的工作.类似于注册ACTION_DOWN并查看ACTION_UP之前的时间.
你如何使用opengl-es检测android上的长按?
我有一个带有较小TextView子项的自定义LinearLayout.我希望能够单击TextView未覆盖的区域,因此我将clickable = true和onclicklistener设置为LinearLayout,但不会触发onClick.如果我在TextView上设置onclick监听器,它按预期工作...
有人可以帮忙吗?
ar_item.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ar_item" android:layout_width="202dp"
android:layout_height="62dp" android:background="@drawable/bg_item_ar"
android:clickable="true">
<TextView android:id="@+id/ar_item_txt"
android:layout_width="164dp" android:layout_height="fill_parent"
android:paddingBottom="8dp" android:paddingLeft="8dp"
android:paddingTop="8dp" android:paddingRight="6dp" android:gravity="center"
android:background="#50000000" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
我的自定义LinearLayout
public class ARView extends LinearLayout
{
public ARView(final Context context, String name, String id)
{
super(context);
getLayoutInflater().inflate(R.layout.ar_item, this ,true);
LayoutInflater inflater = (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
inflater.inflate(R.layout.ar_item, null);
TextView textView = (TextView) findViewById(R.id.ar_item_txt);
textView.setText(name);
setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
Toast t = Toast.makeText(context, "hey!", Toast.LENGTH_SHORT);
t.show();
}
});
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个表格,FrameLayout其中每个框架包含一个ImageView或一个TextView.无论帧中的内容如何,我都希望onClick通过OnClickListener帧上的集合检测事件.
我怎样才能做到这一点?
这是我的一些布局,我总共有5行(这里只显示1行).如上所述,每行有5个FrameLayouts,每个包含一个TextView.我无法将OnClickListener放在TextView上,因为这可能会在运行时更改为ImageView.因此我想在FrameLayout上使用OnClickListener.
似乎FrameLayout的内容阻止它检测到click事件.
<TableLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/gateContainer"
android:stretchColumns="*">
<TableRow
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center">
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/door1"
android:clickable="true">
<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="New Text"
android:id="@+id/textView"
android:layout_gravity="center" />
</FrameLayout>
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/door2" >
<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="New Text"
android:id="@+id/textView5"
android:layout_gravity="center" />
</FrameLayout>
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/door3" >
<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="New Text"
android:id="@+id/textView4"
android:layout_gravity="center"/>
</FrameLayout>
</TableLayout>
Run Code Online (Sandbox Code Playgroud)
这是我如何设置OnClickListeners的示例:
View.OnClickListener clickListener = new View.OnClickListener() {
@Override
public void onClick(View v){
// do something …Run Code Online (Sandbox Code Playgroud)