一些有用的代码

1:倒计时框

package com.example.timerdialog1;

import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface.OnClickListener;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.widget.Button;

public class TimerDialog {

    private static final int MSG_DECREASE = 1000;

    private int mCount = 0;

    private Context mContext;

    private AlertDialog mDialog = null;

    private Button mPositiveBtn = null;

    public TimerDialog(Context ctx) {
        mContext = ctx;
        mDialog = new AlertDialog.Builder(mContext).create();
    }

    public void setMessageCount(int count) {
        mCount = count;
        String info = mContext.getString(R.string.schpwr_shutdown_message_second, mCount);
        mDialog.setMessage(info);
    }

    public void setTitle(int resId) {
        mDialog.setTitle(resId);
    }

    public void setTitle(String title) {
        mDialog.setTitle(title);
    }

    public void show() {
        mDialog.show();
        mHandler.sendEmptyMessageDelayed(MSG_DECREASE, 500);
        mPositiveBtn = mDialog.getButton(AlertDialog.BUTTON_POSITIVE);
    }

    public void setPositiveButton(String text, OnClickListener listener) {
        mDialog.setButton(Dialog.BUTTON_POSITIVE, text, listener);
        mPositiveBtn = mDialog.getButton(AlertDialog.BUTTON_POSITIVE);
    }

    private Handler mHandler = new Handler() {

        public void handleMessage(Message msg) {

            switch (msg.what) {
                case MSG_DECREASE:
                    if (mCount > 0) {
                        mCount--;
                        setMessageCount(mCount);
                        mHandler.sendEmptyMessageDelayed(MSG_DECREASE, 1000);
                    } else {
                        mPositiveBtn.performClick();
                    }
                    break;
            }
        }
    };
}
<resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="schpwr_shutdown_message_second">"手机将于 <xliff:g id="second">%s</xliff:g> 秒后关机"</string>


使用示例


TimerDialog dialog = new TimerDialog(MainActivity.this);
        dialog.setMessageCount(10);
        dialog.setTitle("倒計時");
        dialog.setPositiveButton("確定", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface arg0, int arg1) {
                // TODO Auto-generated method stub
                Toast.makeText(getApplicationContext(), "OK", Toast.LENGTH_LONG).show();
            }
        });
        dialog.show();



你可能感兴趣的:(一些有用的代码)