gpt4 book ai didi

java - 是否可以将listView(来自ListFragment)的setEmptyView设置为imageView和textView?

转载 作者:行者123 更新时间:2023-12-01 13:00:34 25 4
gpt4 key购买 nike

我知道可以将 textView 设置为空 View ,但是是否可以同时拥有 imageView 和 textView。

我在 LinearLayout 中添加了 imageView 和 TextView,并为布局指定了 ID = 空。

在列表片段中注入(inject)View并得到下面的代码

Java

@InjectView(R.id.empty) 查看空;

 View empty = getActivity().getLayoutInflater().inflate(R.id.empty, null);
ListView list = getListView();
list.setEmptyView(empty);

和 XML

    <LinearLayout
android:id="@+id/empty"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:orientation="vertical">

<ImageView
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:src="@drawable/message_blank"/>

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/gap_huge"
android:layout_marginRight="@dimen/gap_huge"
android:layout_marginTop="@dimen/gap_large"
android:gravity="center"
android:tag="akkurat"
android:text="text"
android:textColor="#A0A0A0"
android:textSize="@dimen/textsize_small"/>
</LinearLayout>

运行此代码时出现此错误

enter code here05-08 16:26:21.673: E/AndroidRuntime(2327): FATAL EXCEPTION: main

05-08 16:26:21.673: E/AndroidRuntime(2327): java.lang.RuntimeException: 无法启动 Activity ComponentInfo{uk.co.xxxx.xx/uk.co.xxxx.messaging.MessagingActivity}: java.lang.IllegalStateException:内容 View 尚未创建05-08 16:26:21.673:E/AndroidRuntime(2327):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2295)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2349)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.app.ActivityThread.access $ 700(ActivityThread.java:159)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1316)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.os.Handler.dispatchMessage(Handler.java:99)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.os.Looper.loop(Looper.java:137)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.app.ActivityThread.main(ActivityThread.java:5419)05-08 16:26:21.673:E/AndroidRuntime(2327):在java.lang.reflect.Method.invokeNative( native 方法)05-08 16:26:21.673:E/AndroidRuntime(2327):在java.lang.reflect.Method.invoke(Method.java:525)05-08 16:26:21.673: E/AndroidRuntime(2327): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1187)05-08 16:26:21.673:E/AndroidRuntime(2327):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)05-08 16:26:21.673:E/AndroidRuntime(2327):在dalvik.system.NativeStart.main( native 方法)05-08 16:26:21.673:E/AndroidRuntime(2327):引起:java.lang.IllegalStateException:内容 View 尚未创建05-08 16:26:21.673:E/AndroidRuntime(2327):在android.support.v4.app.ListFragment.ensureList(ListFragment.java:328)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.support.v4.app.ListFragment.getListView(ListFragment.java:222)05-08 16:26:21.673:E/AndroidRuntime(2327):在uk.co.x.messaging.MessagingPortraitFragment.onCreateView(MessagingPortraitFragment.java:99)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.support.v4.app.Fragment.performCreateView(Fragment.java:1460)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:911)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1088)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1444)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:551)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1188)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.app.Activity.performStart(Activity.java:5382)05-08 16:26:21.673:E/AndroidRuntime(2327):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2266)05-08 16:26:21.673: E/AndroidRuntime(2327): ... 11 更多

提前谢谢您。

最佳答案

在我将代码移至 Fragment 的 onStart() 方法之前,我遇到了与您相同的错误:

View empty = getActivity().getLayoutInflater().inflate(R.id.empty, null);
getActivity().addContentView(empty, getListView().getLayoutParams());
getListView().setEmptyView(empty);

关于java - 是否可以将listView(来自ListFragment)的setEmptyView设置为imageView和textView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23546230/

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