android-仿iOS彈出框
兩個彈出框布局:
java 檔案:
package hi.braincol.example.iphoneAlert;/* No CONSTRAINTS ! Just use the code under your thoughts ! * mail me at [email protected]** Licensed under the Apache License, Version 2.0 (the License);* you may not use this file except in compliance with the License.* You may obtain a copy of the License at** http://www.apache.org/licenses/LICENSE-2.0** Unless required by applicable law or agreed to in writing, software* distributed under the License is distributed on an AS IS BASIS,* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.* See the License for the specific language governing permissions and* limitations under the License.*/ import android.app.Activity;import android.app.Dialog;import android.os.Bundle;import android.view.View;import android.view.Window;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;public class MainScreenActivity extends Activity { /** Called when the activity is first created. */Button buttonOk,buttonOkCancel; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); buttonOk = (Button)findViewById(R.id.button1); buttonOk.setOnClickListener(new Button.OnClickListener() { @Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubshowCustomMessageOK(Confirmation,Just click OK to continue !); }}); buttonOkCancel = (Button)findViewById(R.id.button2); buttonOkCancel.setOnClickListener(new Button.OnClickListener() { @Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubshowCustomMessage(Alert,Are you sure you want continue?);}}); } /** * it will show the OK/CANCEL dialog like iphone, make sure no keyboard is visible * * @param pTitle * title for dialog * @param pMsg * msg for body */private void showCustomMessage(String pTitle, final String pMsg) {final Dialog lDialog = new Dialog(MainScreenActivity.this,android.R.style.Theme_Translucent_NoTitleBar);lDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);lDialog.setContentView(R.layout.r_okcanceldialogview);((TextView) lDialog.findViewById(R.id.dialog_title)).setText(pTitle);((TextView) lDialog.findViewById(R.id.dialog_message)).setText(pMsg);((Button) lDialog.findViewById(R.id.ok)).setText(Ok);((Button) lDialog.findViewById(R.id.cancel)).setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// write your code to do things after users clicks CANCELlDialog.dismiss();}});((Button) lDialog.findViewById(R.id.ok)).setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// write your code to do things after users clicks OK lDialog.dismiss();}});lDialog.show();} /** * it will show the OK dialog like iphone, make sure no keyboard is visible * * @param pTitle * title for dialog * @param pMsg * msg for body */private void showCustomMessageOK(String pTitle, final String pMsg) {final Dialog lDialog = new Dialog(MainScreenActivity.this,android.R.style.Theme_Translucent_NoTitleBar);lDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);lDialog.setContentView(R.layout.r_okdialogview);((TextView) lDialog.findViewById(R.id.dialog_title)).setText(pTitle);((TextView) lDialog.findViewById(R.id.dialog_message)).setText(pMsg);((Button) lDialog.findViewById(R.id.ok)).setText(Ok);((Button) lDialog.findViewById(R.id.ok)).setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// write your code to do things after users clicks OKlDialog.dismiss();}}); lDialog.show();} }
運行執行個體如下: