adnroid仿miui的dialog,adnroidmiuidialog
先來看下:
其中show和dismiss的時候有動畫效果。
原先試過使用PopupWindow來做,但是使用的時候不是那麼舒服,畢竟不是dialog嘛。
所以這次嘗試還是使用dialog來做 ,很多地方是引用了系統源碼(源碼是最好的老師)
首先看CustomDialog.java的建構函式:
protected CustomDialog(Context context) { this(context, R.style.CustomDialog); } protected CustomDialog(Context context, int theme) { super(context, theme); mAlert = new AlertController(context, this, getWindow()); Window window = getWindow(); window.setGravity(Gravity.BOTTOM); // 設定window的位置為底部 window.setWindowAnimations(R.style.AnimationDialog); // 設定window的動畫 window.setBackgroundDrawableResource(android.R.color.transparent); // 設定window背景透明 }
艾瑪,不太會描述,直接上源碼
0資源分代碼:http://download.csdn.net/detail/luck_apple/7735321
用eclipse建立adnroid的avd問題
First you have to specify the Android SDK installation folder to the Eclipse Android plugin. Go to Preferences -> Android and set it. After that you have to install the target versions you want to develop against.
Go to AVD Manager -> Available Packages and download the targets that you need. After that you should be able to create your AVD. If you still have problems, try restarting Eclipse because that solved some issues for me a number of times.
If you still have problems try reading the Troubleshooting Tips.
首先,你必須指定檔案夾中的Android SDK安裝到Eclipse的Android外掛程式。前往“Preferences -> Android設定。之後,然後安裝你想要部署的版本。
前往AVD Manager -> Available Packages ,並下載您所需要的包。之後,你應該能夠建立您的AVD。如果您仍然有問題,請嘗試重新啟動Eclipse,因為這解決了我一些問題多次。
如果您仍然有問題,請嘗試閱讀疑難解答提示。
adnroid怎開啟新的進程
使用handler並沒有建立一個新的進程,沒有新的進程必須要開啟之後才行(start方法),而是一種假線程,每個建立一個handler就將一個線程和訊息佇列綁定在一起。
如何建立一個新的進程,看下面的代碼:
[java] view plaincopy
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
System.out.println("Activity Id: " + Thread.currentThread().getId());
System.out.println("Activity Name: " + Thread.currentThread().getName());
//建立一個新的進程,必須使用start方法啟動
HandlerThread thread = new HandlerThread("otherThread");
thread.start();
//將新的線程和handler綁定在一起
//每個線程裡面都有各一個looper,looper用於迴圈接受訊息
MyHandler myHandler = new MyHandler(thread.getLooper());
//發送message到myhandler中
Message msg = myHandler.obtainMessage();
//將資料放入bundle中,通過訊息發送
Bundle bundle = new Bundle();
bundle.putString("name", "gap");
bundle.putInt("age", 23);
msg.setData(bundle);
msg.sendToTarget();
}
class MyHandler extends Handler {
public MyHandler() {
}
public MyHandler(Looper looper) {
super(looper);
}
@Override
public void handleMessage(Message msg) {
// TODO Auto-generated method stub
super.handleMessage(msg);
System.out.println("otherThr......餘下全文>>