您好,登錄后才能下訂單哦!
本文實(shí)例為大家分享了Android仿Iphone屏幕底部彈出效果的具體代碼,供大家參考,具體內(nèi)容如下
main.xml如下:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Button android:id="@+id/button" android:text="popupWindow" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </RelativeLayout>
styles.xml如下:
<?xml version="1.0" encoding="utf-8"?> <resources> <style name="popupAnimation" parent="android:Animation"> <item name="android:windowEnterAnimation">@anim/in</item> <item name="android:windowExitAnimation">@anim/out</item> </style> </resources> popupwindow.xml如下: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#b5555555" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_marginBottom="12dip" android:paddingLeft="10dip" android:paddingRight="10dip" android:orientation="vertical" > <Button android:id="@+id/confirmButton" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="center" android:text="確定"/> <Button android:id="@+id/cancleButton" android:layout_marginTop="12dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="center" android:text="取消" /> </LinearLayout> </RelativeLayout>
in.xml如下:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromYDelta="5000" android:toYDelta="0" android:duration="1500" /> </set>
out.xml如下:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromYDelta="0" android:toYDelta="5000" android:duration="1500" /> </set>
PopupWindowTestActivity.Java如下:
import android.app.Activity; import android.graphics.drawable.BitmapDrawable; import android.os.Bundle; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup.LayoutParams; import android.widget.Button; import android.widget.PopupWindow; /** * Demo描述: * 仿Iphone從屏幕底部彈出半透明的PopupWindow */ public class PopupWindowTestActivity extends Activity { private Button button; private Button confirmButton; private Button cancleButton; private PopupWindow popupWindow; private View popupWindowView; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); init(); } private void init(){ button=(Button) findViewById(R.id.button); button.setOnClickListener(new ButtonOnClickListener()); } private class ButtonOnClickListener implements OnClickListener { @Override public void onClick(View v) { switch (v.getId()) { case R.id.button: LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE); popupWindowView = inflater.inflate(R.layout.popupwindow, null); popupWindow = new PopupWindow(popupWindowView,LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT,true); popupWindow.setBackgroundDrawable(new BitmapDrawable()); //設(shè)置PopupWindow的彈出和消失效果 popupWindow.setAnimationStyle(R.style.popupAnimation); confirmButton = (Button) popupWindowView.findViewById(R.id.confirmButton); confirmButton.setOnClickListener(new ButtonOnClickListener()); cancleButton = (Button) popupWindowView.findViewById(R.id.cancleButton); cancleButton.setOnClickListener(new ButtonOnClickListener()); popupWindow.showAtLocation(confirmButton, Gravity.CENTER, 0, 0); break; case R.id.confirmButton: System.out.println("點(diǎn)擊了確定按鈕"); break; case R.id.cancleButton: popupWindow.dismiss(); break; default: break; } }} }
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。