gpt4 book ai didi

android - 在 ViewPager 中加载页面时显示进度图标

转载 作者:行者123 更新时间:2023-11-29 00:26:40 25 4
gpt4 key购买 nike

我在我的应用程序中使用 AsyncTask 从 Internet 加载数据。这是我的类的 onPostExecute 方法,它扩展了 Async 类。

protected void onPostExecute(Article result) {
super.onPostExecute(result);

TextView txtTitle= (TextView) view.findViewById(R.id.title);
txtTitle.setText(result.getTitle());

TextView txtMain= (TextView) view.findViewById(R.id.main);
txtMain.setText(result.getContent());
}

这是实例化页面的 PageAdapter 的重写方法。 customlayout 是显示文章的布局。

public Object instantiateItem(View container, int position) {
LayoutInflater inflater = (LayoutInflater) container.getContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View page= inflater.inflate(R.layout.customlayout , null);

Worker aw = new Worker(page, container.getContext());
aw.execute(links.get(position));

((ViewPager) container).addView(page,0);
return page;
}

这是在每个页面中膨胀的页面布局。

<TextView
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>

<TextView
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp" />

我想要实现的是在数据加载之前显示进度信息。我应该能够在加载时滑动页面。如果有人愿意提供帮助,我将不胜感激。

另外,如何控制在后台加载的页面数量?

最佳答案

如果你正在寻找一个旋转的进度条,你可以试试这个:

xml:

<FrameLayout android:id="@+id/progressContainer">
<ProgressBar style="@android:style/Widget.ProgressBar.Large"
android:layout_gravity="center" />
</FrameLayout>

Activity :

private View progressContainer;

@Override
public View onCreateView(...) {
progressContainer = v.findeViewById(R.id.progressContainer);
progressContainer.setVisibility(View.INVISIBLE);
}

因此,只要您需要显示 Progress,只需将 View 设置为可见即可。

如果您仍然希望能够与您的 Activity 进行交互,您可以只修改父 FrameLayout 的可点击性:

android:clickable="true" (or "false")

如果你想互动就把它设置为false,想要阻止就设置为true!

关于android - 在 ViewPager 中加载页面时显示进度图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18852271/

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