效果图
布局文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <RelativeLayout android:layout_width="180dp" android:layout_height="180dp" android:layout_centerInParent="true" android:background="@drawable/corner"> <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center" android:orientation="vertical" > <ProgressBar android:id="@+id/progressBar1" style="?android:attr/progressBarStyleLarge" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="正在登录..." android:layout_marginTop="10dp" android:textColor="#fff" android:textSize="20sp" /> </LinearLayout> </RelativeLayout> </RelativeLayout>
drawable文件夹下添加corner.xml:
<?xml version="1.0" encoding="utf-8"?> <!-- shape如果不声明形状则默认为正方形 --> <shape xmlns:android="http://schemas.android.com/apk/res/android" > <corners android:radius="15.0dp" /> <!-- 圆角,你也可以对不同的角设置不同的数值 --> <solid android:color="#a0000000" /> <!-- 形状的填充色 --> <stroke android:width="0dp" android:color="#CCCCCC" /> <!-- 边框宽度和颜色 --> </shape>
LoadingActivity 登陆提示页
public class LoadingActivity extends Activity{ public static LoadingActivity instance = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTheme(R.style.Transparent); //在styles.xml 中定义 setContentView(R.layout.loading); MyApplication.getInstance().addActivity(this); instance = this; //这里Handler的postDelayed方法,等待10000毫秒在执行run方法。 //在Activity中我们经常需要使用Handler方法更新UI或者执行一些耗时事件, //并且Handler中post方法既可以执行耗时事件也可以做一些UI更新的事情,比较好用,推荐使用 // new Handler().postDelayed(new Runnable(){ // public void run(){ // //等待10000毫秒后销毁此页面,并提示登陆成功 // LoadingActivity.this.finish(); // Toast.makeText(getApplicationContext(), "登录成功", Toast.LENGTH_SHORT).show(); // } // }, 10000); } }
在colors.xml 中定义背景色
<color name="translucence">#ff4e4752</color> <color name="transparent_background">#50000000</color>
在styles.xml 中定义背景
<style name="Transparent"> <item name="android:windowBackground"> @color/transparent_background </item> <item name="android:windowNoTitle">true</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowAnimationStyle"> @+android:style/Animation.Translucent </item> </style>
在需要打开登陆提示的地方加入:
Intent intent = new Intent(); intent.setClass(LoginActivity.this,LoadingActivity.class);//跳转到加载界面 startActivity(intent);
在需要关闭提示页面的地方加入:
LoadingActivity.instance.finish();