gpt4 book ai didi

Android SwipeInterceptorView 对 TextView 使用 DroidQuery

转载 作者:行者123 更新时间:2023-11-30 03:25:16 25 4
gpt4 key购买 nike

我正在使用 droidQuery向我的应用程序添加一些手势检测的库。我在我的 xml 文件中添加 SwipeInterceptorView 时遇到了问题(参见原始问题 here ,所以我在我的 onCreate 方法中定义它并给它相同的参数。然后我将它添加到我的布局使用 layout.addView(swipeInterceptorView)。我试图将它添加到我的 XML 布局文件中,但出现错误。

以编程方式定义 SwipeInterceptorView 是好的做法,还是我应该将它添加到我的 XML 文件中?如果需要,我该如何修复这个 XML 文件? :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/table"
android:orientation="vertical" >
<self.philbrown.SwipeInterceptorView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/swipe_view"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</self.philbrown.SwipeInterceptorView>
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>

当我使用此布局时,出现运行时错误 java.lang.ClassNotFoundException

此外,我知道如何将 onClickListener 添加到 ImageView,但是谁能告诉我如何将监听器添加到 TextView > 还有吗?

感谢您的帮助!

最佳答案

Is defining the SwipeInterceptorView programatically good practice, or should I add it to my XML file?

最佳做法是在 XML 中定义 View,因为这提供了一个可重用的文件(这样您就可以在您的应用程序的其他地方使用它,或者在另一个应用程序中再次使用它).

也就是说,以编程方式实例化它并不是做法 - 它只是降低了可重用性因素。

how can I fix this XML file?

我目前不确定为什么这不起作用。我将尽快更详细地研究它。同时,可以确定的是下载整个项目,将其导入您的工作区,并将其添加为库项目,而不是jar

Also, i know how to add the onClickListener to an ImageView, but could anyone tell me how I should add the listener to a TextView also?

您可以使用完全相同的方式添加点击监听器:

mTextView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//your code
}
});

如果您想充分利用 droidQuery 库,您可以选择使用以下方法之一:

点击

$.with(mTextView).click(new Function() {
@Override
public void invoke($ droidQuery, Object... params) {
//your code
}
});

开启

$.with(mTextView).on("click", new Function() {
@Override
public void invoke($ droidQuery, Object... params) {
//your code
}
});

一个(只处理一次点击)

$.with(mTextView).one("click", new Function() {
@Override
public void invoke($ droidQuery, Object... params) {
//your code
}
});

绑定(bind)

Object data = new Object();//could be anything
$.with(mTextView).on("click", data, new Function() {
@Override
public void invoke($ droidQuery, Object... params) {//data will be passed as a param
//your code
}
});

关于Android SwipeInterceptorView 对 TextView 使用 DroidQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18332686/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com