我的问题是如何创建一个看起来像给定图片的消息对话框
我想在位图图片中应用此消息对话框
你可以这样做......
布局 msgbox1:-
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_gravity="center_vertical|center_horizontal">
<ImageView android:id="@+id/ImageView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/image1" android:layout_gravity="center_vertical|center_horizontal"></ImageView>
</LinearLayout>
布局 msgbox2:-
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_gravity="center_vertical|center_horizontal">
<ImageView android:id="@+id/ImageView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/image1" android:layout_gravity="center_vertical|center_horizontal"></ImageView>
</LinearLayout>
Java代码:-
private static final int MsgBox1 = 0,MsgBox2 = 1; //Declaration done on top
.
protected Dialog onCreateDialog(int id)
{
dialog = new Dialog(tagame.this,android.R.style.Theme_Light_Panel);
switch(id) {
case MsgBox1:
dialog.setContentView(R.layout.msgbox1);
break;
case MsgBox2:
dialog.setContentView(R.layout.msgbox2);
break;
}
return dialog;
}
要显示 message1 框,您可以使用...
showDialog(MsgBox1);
对于隐藏消息框...
removeDialog(MsgBox1);
您可以通过创建自定义对话框来做到这一点。Step1.在res中的String文件中创建样式
<style name="myQuitDialog" parent="android:Theme.Dialog">
<item name="android:gravity">center_horizontal</item>
</style>
第2步。在布局中创建 xml 文件
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_quit"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/image which u want to show"
>
</RelativeLayout>
第三步。在src中编写自定义对话框的代码
class Custom_Dialog extends Dialog {
protected Custom_Dialog(Context context, int theme) {
super(context, theme);
// TODO Auto-generated constructor stub
}
}
private void show_alert() {
final Custom_Dialog alertbox = new Custom_Dialog(this, R.style.myQuitDialog);
Window window = alertbox.getWindow();
window.setBackgroundDrawableResource(android.R.color.transparent);
window.requestFeature(window.FEATURE_NO_TITLE);
alertbox.show();
alertbox.setCancelable(true);
alertbox.setCanceledOnTouchOutside(true);
alertbox.dismiss();
}
}
通过这种方式,您可以做到这一点。
设置时间间隔并动态更改位图。
编辑详细答案:
你可以像这样使用 imageView。
imageView.postDelayed (Runnable action, long delayMillis)
为了利用上述方法,
您必须创建一个Runnable
可以处理您的BitMap
值更改的方法。并Thread.sleep(time)
在Runnable
.
通常这种方法ImageView
将值放在后面delayMillis
。所以更好的是你必须在立即初始化 imageView 后调用这个方法。并根据您的delayMillis
意愿实现该价值。(在您的情况下,应该非常少)。
因此,根据该Thread.sleep(time)
方法,您的位图将动态更改。
我的第一个建议:(设置时间interval
并动态更改bitmap
)
我建议在设置Timer
中设置一个Activity
并根据Timer
设置,只需BitMap
向您提供值以ImageView
动态更改它。
希望你理解并觉得有用。