activity_main.xml正如你所见,我在下方,高度设定为40度.
在MyEclipse中,它看起来如下:

但是当我在手机上运行时,它看起来如下:

所以我的问题是为什么进度条的真实高度不是我设置的那个?如何增加进度条的高度?
卸载Android应用程序或进行一些配置时,会显示这样一个水平进度条,如下图所示:

它的风格不一样@android:style/Widget.ProgressBar.Horizontal.
如何在我自己的应用程序中使用它?
我正在使用一个RecyclerView并从API获取对象,批量为十.对于分页,我使用EndlessRecyclerOnScrollListener.
一切正常.现在剩下的就是在列表底部添加一个进度微调器,同时由API提取下一批对象.以下是Google Play商店应用的屏幕截图,其中显示了以下ProgressBar内容RecyclerView:
问题是,在获取下一批对象时,既RecyclerView没有EndlessRecyclerOnScrollListener内置支持也没有显示ProgressBar底部的内置支持.
我已经看到了以下答案:
1. 将不确定的ProgressBar页脚放在RecyclerView网格中.
2. 添加项目到无尽的滚动RecyclerView与ProgressBar在底部.
我不满意这些答案(由同一个人).这涉及null 在用户滚动时中途将对象拴入数据集中,然后在下一批次交付后将其取出.它看起来像是一个黑客,可以回避主要问题,可能会或可能不会正常工作.它会在列表中引起一些刺耳和失真
使用SwipeRefreshLayout不是解决方案.SwipeRefreshLayout涉及从顶部拉取以获取最新的项目,并且它无论如何都不显示进度视图.
有人可以为此提供一个很好的解决方案吗?我有兴趣知道Google是如何为自己的应用程序实现此功能的(Gmail应用程序也有此功能).是否有任何文章详细显示?所有的答案和评论将不胜感激.谢谢.
其他一些参考:
1. 分页RecyclerView.(精湛的概述......)
2. RecyclerView页眉和页脚.(更多相同......)
android android-listview android-progressbar android-5.0-lollipop android-recyclerview
我想像这样实现ProgressDialog,没有额外的框架:

但是我得到了这个.我怎么能改变呢?

这是我的ProgressDialog代码.提前致谢
private ProgressDialog mProgressDialog;
............
mProgressDialog = new ProgressDialog(activity);
mProgressDialog.setIndeterminate(false);
mProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
............
public class ProgressTask extends AsyncTask <Fragment,Void,Fragment>{
@Override
protected void onPreExecute(){
mProgressDialog.show();
}
@Override
protected Fragment doInBackground(Fragment... arg0) {
//my stuff is here
}
@Override
protected void onPostExecute(Fragment result) {
mProgressDialog.dismiss();
}
}
Run Code Online (Sandbox Code Playgroud) 这是代码:
<item android:id="@android:id/background">
<shape>
<corners android:radius="8dp"/>
<solid android:color="@color/dirtyWhite"/>
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="8dp"/>
<solid android:color="@color/colorPrimaryDark"/>
</shape>
</clip>
</item>
Run Code Online (Sandbox Code Playgroud)
我的进度条:
<ProgressBar
android:id="@+id/activeProgress"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:progress="10"
android:progressDrawable="@drawable/rounded_corners_progress_bar"/>
Run Code Online (Sandbox Code Playgroud)
我尝试<size>在<shape>in 上添加属性<clip以使进度形状稍微小一点,但它不起作用.此外,进度条是平的,我想按照设计弯曲.我需要改变才能实现设计?
我正在尝试向我的应用程序添加进度/加载栏WebView.我很困惑如何实现每次单击链接时出现的进度条.
当前代码:
public class CULearnBrowser extends Activity {
WebView webview;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
webview = (WebView) findViewById(R.id.webview);
webview.setWebViewClient(new HelloWebViewClient());
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("https://culearn.colorado.edu/webct/entryPageIns.dowebct");
}
private class HelloWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && webview.canGoBack()) {
webview.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
}
Run Code Online (Sandbox Code Playgroud)
活动布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"> …Run Code Online (Sandbox Code Playgroud) 我的应用程序UI是使用Android支持库构建的,但目前没有AppCompat版本的(intederminate)进度条,我的应用程序确实需要它.
我宁愿不使用任何第三方库来实现材料设计进度条,所以我想知道是否有人知道为什么它不包含在支持库中,以及是否有任何迹象表明它到达(以及何时).
android android-appcompat android-progressbar android-support-library material-design
我在找到指定进度条应该具有小的不确定样式的正确方法时遇到了一些困难.
如果有人可以为我和其他人快速搜索这些信息,我会很高兴.
如何在android中显示不确定的水平进度条?进度条的动画应从0到100开始,然后从100连续返回0.我不是在寻找车轮进度条.
在我的应用程序中,我有一个WebView从Internet加载任何URL.现在,有时由于网络速度慢,页面需要很长时间才能加载,用户只能看到一个空白屏幕.
我想显示ProgressBar的同时WebView被加载和隐藏ProgessBar当WebView被完全加载.
我知道如何使用ProgressBar和AsyncTasks,但这是我的问题.
这是我用来加载我的代码WebView.
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.setWebViewClient(new HelloWebViewClient());
mWebView.loadUrl(web_URL);
Run Code Online (Sandbox Code Playgroud)
这是我的自定义WebViewClient课程
private class HelloWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
现在,如果我尝试显示ProgressBar使用AsyncTasks然后我想我必须给代码加载doInBackGround()我的函数中的URL AsyncTask并通过该onProgressUpdate()函数显示进度.
但是,如何在doInBackground()中加载URL,因为doInBackground()在非UI线程上运行,我无法在其中使用mWebView.loadUrl(web_URL).
有什么建议?我错过了一些明显的东西吗 请指导我.
android android-webview android-progressbar android-asynctask