Android 自定义进度对话框动画
我正在使用Android 自定义进度对话框动画,android,android-layout,android-emulator,android-widget,Android,Android Layout,Android Emulator,Android Widget,我正在使用自定义进度对话框。我已经像这个问题一样设置了它的样式,所以我的进度对话框根本没有显示动画。当我将背景更改为黑色时,它只显示了一个黑框。我希望我的进度对话框设置动画 在活动中,我正在做这样的事情 public MyProgressDialog(Context context) { super(context, R.style.NewDialog); } 新建对话框如下所示: <style name="NewDialog" parent="@android
自定义进度对话框
。我已经像这个问题一样设置了它的样式,所以我的进度对话框根本没有显示动画。当我将背景
更改为黑色
时,它只显示了一个黑框。我希望我的进度对话框设置动画
在活动中,我正在做这样的事情
public MyProgressDialog(Context context) {
super(context, R.style.NewDialog);
}
新建对话框如下所示:
<style name="NewDialog" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowTitleStyle">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
<item name="android:backgroundDimEnabled">true</item>
<item name="android:width">50dip</item>
<item name="android:height">50dip</item>
<item name="android:background">@android:color/transparent</item>
</style>
@空的
@android:彩色/透明
真的
@空的
@空的
@android:style/Animation.Dialog
状态未指定|调整盘
真的
50度
50度
@android:彩色/透明
任何帮助都要提前感谢
import android.app.ProgressDialog;
import android.content.Context;
import android.view.animation.Animation;
public class MyProgressDialog extends ProgressDialog {
public MyProgressDialog(Context context) {
super(context,R.style.NewDialog);
// TODO Auto-generated constructor stub
}
}
//资源样式文件res->values->mydialog.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="NewDialog" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowTitleStyle">@null</item>
<item name="android:colorBackground">#ffffff</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
<item name="android:backgroundDimEnabled">true</item>
<item name="android:width">600dip</item>
<item name="android:height">100dip</item>
<item name="android:textColor">#FF0000</item>
</style>
</resources>
好吧,你的代码和我的代码没有任何区别,因为我运行你的代码只是为了测试你是否遇到任何问题,但我仍然在为你发帖,以便你能够找出问题
谢谢:)
您将获得完整的动画示例发布与动画相关的特定代码我复制粘贴代码来源不要让我们转到其他帖子查看代码,只将相关代码发布到动画。在活动中,我正在执行此公共MyProgressDialog(上下文){super(context,R.style.NewDialog);}我已经尝试过这段代码,它工作得很好。你想让我发布整个代码吗?我不明白为什么它不显示动画?有一点不同@SALMAN我用Dialog扩展了我的ProgressDialog,在你的例子中是ProgressDialog。仍然有一个问题,进度对话框没有集中在它所在的框中,任何clueChange样式文件中的这两行。20dip 20dipSalman:我希望在这个链接中,进度指示器不在对话框的中心
MyProgressDialog pd = new MyProgressDialog(YouActivity.this);
pd.setMessage("Loading. Please wait...");
pd.show();
public class TransparentProgressDialog extends Dialog {
private ImageView iv;
public TransparentProgressDialog(Context context, int resourceIdOfImage) {
super(context, R.style.TransparentProgressDialog);
WindowManager.LayoutParams wlmp = getWindow().getAttributes();
wlmp.gravity = Gravity.CENTER_HORIZONTAL;
getWindow().setAttributes(wlmp);
setTitle(null);
setCancelable(false);
setOnCancelListener(null);
resourceIdOfImage = R.drawable.loading_spinner_icon;
LinearLayout layout = new LinearLayout(context);
layout.setOrientation(LinearLayout.VERTICAL);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
iv = new ImageView(context);
iv.setImageResource(resourceIdOfImage);
layout.addView(iv, params);
addContentView(layout, params);
}
}