小编Asw*_*win的帖子

比较Kotlin中的两个列表

我遇到了kotlin equals函数来比较两个相同类型的列表。它对于带有数据类的纯Kotlin很好用。

我正在Kotlin项目中使用Java库,其中的回调方法以X秒的时间间隔返回对象列表。尝试针对每个调用将旧列表与新列表进行比较,但是即使项目相同且相等,equals也会返回false。

val mOldList: MutableList<MyObject>()? = null

override fun updatedList(list: MutableList<MyObject>){
    // other code
    if (mOldList.equals(list)) // false everytime
}
Run Code Online (Sandbox Code Playgroud)

这是因为Java的来自库的equals方法吗?

列表比较的替代建议将是有益的。

java kotlin kotlin-interop

8
推荐指数
7
解决办法
1万
查看次数

为什么我们使用xml?

我们正在为开发Android应用程序的单个应用程序创建许多XML文件; 当然这是android的主题.对于app的每个屏幕,我们都在创建一个带有一些布局的XML(静态实现).在执行时,每次读取XML文件以获取它想要显示我们设计的屏幕的所有资源.

通过在java代码本身中添加几行(动态实现)可以实现相同的设计.就像我们可以扩展ListActivity而不是创建XML文件一样.那么为什么要使用XML,因为应用程序需要从手机内存中读取文件,这可能导致访问速度慢并使应用程序变慢?

因此,动态实现总是优于静态实现.

如果我错了,请纠正我.

xml android android-xml

5
推荐指数
2
解决办法
3402
查看次数

禁用滚动列表视图不起作用

我实际上使用的是嵌套列表视图.父列表视图使用自定义适配器和子级的正常列表视图.

我知道我可以使用expandable list view.但是在我的场景中处理它们的子项更复杂.有很多组件.

这是我尝试过的,点击父列表中的按钮显示相应的子列表项.这工作正常.但唯一的问题是滚动.我想滚动子列表,但是父列表是滚动的.我尝试了两个setScrollContainer(false)并且setClickable(false)(刚试过)为父母,但没有用.

这是我的代码.

activity_main.xml中

<RelativeLayout
    android:id="@+id/parent_rel"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingBottom="@dimen/activity_vertical_margin" >

    <Button
        android:id="@+id/b_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="15dp"
        android:text="View" />

    <TextView
        android:id="@+id/parent_txt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/b_view"
        android:layout_alignBottom="@+id/b_view"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="96dp"
        android:text="TextView" />
</RelativeLayout>

<RelativeLayout
    android:id="@+id/child_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/parent_rel"
    android:layout_below="@+id/parent_rel"
    android:visibility="gone" >

    <ListView
        android:id="@+id/ch_listView"
        android:layout_width="match_parent"
        android:layout_height="150dp"
        android:background="#000000" >
    </ListView>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

MainActivity.java

公共类MainActivity扩展ListActivity {

ListView lv;
String[] prnt_items = { "a", "b", "c", "d", "e", "f", "g", "h", "i", "j" };
boolean isViewing = false;
RelativeLayout …
Run Code Online (Sandbox Code Playgroud)

android listview

1
推荐指数
1
解决办法
6510
查看次数

标签 统计

android ×2

android-xml ×1

java ×1

kotlin ×1

kotlin-interop ×1

listview ×1

xml ×1