微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – ProgressDialog已弃用.使用的替代方法是什么?

我发现现在已经弃用了ProgressDialog.除了ProgressBar之外,还有什么可替代使用它.
我正在使用android studio版本2.3.3.

ProgressDialog progressDialog=new ProgressDialog(this);
progressDialog.show();

解决方法:

是的,在API级别26中,它已被弃用,您可以使用进度条.

使用此代码以编程方式创建:

RelativeLayout layout = findViewById(R.id.display); //specify here Root layout Id

(or)

RelativeLayout layout = findViewById(this);

progressBar = new ProgressBar(youractivity.this,null,android.R.attr.progressBarStyleLarge);
 RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(100,100);
 params.addRule(RelativeLayout.CENTER_IN_PARENT);
 layout.addView(progressBar,params);
 progressBar.setVisibility(View.VISIBLE);  //To show ProgressBar
 progressBar.setVisibility(View.GONE);     // To Hide ProgressBar

要禁用用户交互,您只需添加以下内容即可
 码

06001

要恢复用户交互,您只需添加以下代码即可

getwindow().clearFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);

仅供将来参考,将android.R.attr.progressBarStyleSmall更改为android.R.attr.progressBarStyleHorizo​​ntal.

This below line code works only above API 21
progressBar.setProgresstintList(ColorStateList.valueOf(Color.RED));

解决方案2:另一种方式

<ProgressBar
        android:id="@+id/progressbar"
        style="?android:attr/progressBarStyleHorizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:indeterminate="true"
        android:max="100"
        android:backgroundTint="@color/white"
        android:layout_below="@+id/framelauout"
        android:indeterminateTint="#1a09d6"
        android:layout_marginTop="-7dp"/>

Activity.java

progressBar = (ProgressBar) findViewById(R.id.progressbar);
 `progressBar.setVisibility(View.VISIBLE);`// To Show ProgressBar 
 `progressBar.setVisibility(View.INVISIBLE);` //To Hide ProgressBar

For more Details: 07001
07002

我希望这可以帮到你.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐