Android編程實現(xiàn)長按彈出選項框View進行操作的方法
本文實例講述了Android編程實現(xiàn)長按彈出選項框View進行操作的方法。分享給大家供大家參考,具體如下:
長按彈出選項框View進行操作
主要代碼解釋
private void showPopWindows(View v) {
/** pop view */
View mPopView = LayoutInflater.from(this).inflate(R.layout.popup, null);
final PopupWindow mPopWindow = new PopupWindow(mPopView, ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT, true);
/** set */
mPopWindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
/** 這個很重要 ,獲取彈窗的長寬度 */
mPopView.measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED);
int popupWidth = mPopView.getMeasuredWidth();
int popupHeight = mPopView.getMeasuredHeight();
/** 獲取父控件的位置 */
int[] location = new int[2];
v.getLocationOnScreen(location);
/** 顯示位置 */
mPopWindow.showAtLocation(v, Gravity.NO_GRAVITY, (location[0] + v.getWidth() / 2) - popupWidth / 2, location[1]
- popupHeight);
mPopWindow.update();
final String copyTxt = (String) v.getTag();
mPopView.findViewById(R.id.tv_copy_txt).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
copyToClip(copyTxt);
if (mPopWindow != null) {
mPopWindow.dismiss();
}
}
});
}
layout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/pop_bg" >
<TextView
android:id="@+id/tv_copy_txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="center"
android:text="復(fù)制邀請碼"
android:textColor="@android:color/white"
android:textSize="12sp" />
</LinearLayout>
效果圖:

根據(jù)上面可以自行調(diào)整位置。
完整實例代碼點擊此處本站下載。
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android控件用法總結(jié)》、《Android開發(fā)入門與進階教程》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android數(shù)據(jù)庫操作技巧總結(jié)》及《Android資源操作技巧匯總》
希望本文所述對大家Android程序設(shè)計有所幫助。
- android底部彈出iOS7風(fēng)格對話選項框(QQ對話框)--第三方開源之IOS_Dialog_Library
- android PopupWindow 和 Activity彈出窗口實現(xiàn)方式
- android 彈出提示框的使用(圖文實例)
- android實現(xiàn)百度地圖自定義彈出窗口功能
- android彈出activity設(shè)置大小的方法
- Android實現(xiàn)彈出鍵盤的方法
- android 對話框彈出位置和透明度的設(shè)置具體實現(xiàn)方法
- Android實現(xiàn)可輸入數(shù)據(jù)的彈出框
- Android彈出窗口實現(xiàn)方法
- Android百度地圖實現(xiàn)搜索和定位及自定義圖標(biāo)繪制并點擊時彈出泡泡
- Android實現(xiàn)彈出登陸框的方案
- 詳解Android首選項框架的使用實例
- Android編程單選項框RadioGroup綜合應(yīng)用示例
相關(guān)文章
Android Surfaceview的繪制與應(yīng)用
這篇文章主要介紹了Android Surfaceview的繪制與應(yīng)用的相關(guān)資料,需要的朋友可以參考下2017-07-07
Android 6.0動態(tài)權(quán)限及跳轉(zhuǎn)GPS設(shè)置界面的方法
今天小編就為大家分享一篇Android 6.0動態(tài)權(quán)限及跳轉(zhuǎn)GPS設(shè)置界面的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07
ExpandableListView實現(xiàn)手風(fēng)琴效果
這篇文章主要為大家詳細(xì)介紹了ExpandableListView實現(xiàn)手風(fēng)琴效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08
Android基礎(chǔ)之獲取LinearLayout的寬高
LinearLayout是線性布局控件,它包含的子控件將以橫向或豎向的方式排列,按照相對位置來排列所有的widgets或者其他的containers,超過邊界時,某些控件將缺失或消失。有的時候,我們需要想獲取LinearLayout寬高,下面通過這篇文章來跟著小編一起學(xué)習(xí)學(xué)習(xí)吧。2016-11-11

