需要用到第三方Mob
首先自定义一个Popwindow:
public class PopWindowShare extends PopupWindow {
private Context mContext;
private View view;
private final RadioButton share_wechat;
private final RadioButton share_wechat_timeline;
private final RadioButton share_sina;
private final RadioButton share_qq;
private final RadioButton share_qzone;
private final RadioButton share_hyperlink;
private final RadioButton share_cancel;
public PopWindowShare(final Context mContext, View.OnClickListener itemsOnclick){
this.view= LayoutInflater.from(mContext).inflate(R.layout.share_pop,null);
share_wechat = (RadioButton) view.findViewById(R.id.share_wechat);
share_wechat_timeline = (RadioButton) view.findViewById(R.id.share_wechat_timeline);
share_sina = (RadioButton) view.findViewById(R.id.share_sina);
share_qq = (RadioButton) view.findViewById(R.id.share_qq);
share_qzone = (RadioButton) view.findViewById(R.id.share_qzone);
share_hyperlink = (RadioButton) view.findViewById(R.id.share_hyperlink);
//取消按钮
share_cancel = (RadioButton) view.findViewById(R.id.share_cancel);
share_cancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//销毁弹出框
dismiss();
//activity的背景透明度---方法在最后
backgroundAlpha((Activity) mContext,1f);
}
});
//设置按钮监听
share_wechat.setOnClickListener(itemsOnclick);
share_wechat_timeline.setOnClickListener(itemsOnclick);
share_sina.setOnClickListener(itemsOnclick);
share_qq.setOnClickListener(itemsOnclick);
share_qzone.setOnClickListener(itemsOnclick);
share_hyperlink.setOnClickListener(itemsOnclick);
//设置外部可点击
this.setOutsideTouchable(true);
this.view.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int height=view.findViewById(R.id.pop_linearlayout).getTop();
int y= (int) event.getY();
if (event.getAction()==MotionEvent.ACTION_UP){
if (yreturn true;
}
});
//设置弹出窗口特征
//设置视图
this.setContentView(this.view);
//设置弹出窗体的宽高
int h=mContext.getResources().getDisplayMetrics().heightPixels;
this.setHeight(h/2);
this.setWidth(LinearLayout.LayoutParams.MATCH_PARENT);
//设置弹出窗体可点击
this.setFocusable(true);
//实例化一个colorDrawable颜色为半透明
// ColorDrawable dw=new ColorDrawable(0xb0000000);
//颜色为白色
ColorDrawable dw1=new ColorDrawable(0xffffffff);
//设置弹出窗体的背景
// this.setBackgroundDrawable(dw);
this.setBackgroundDrawable(dw1);
/*背景透明度*/
backgroundAlpha((Activity) mContext,0.5f);
this.setOnDismissListener(new OnDismissListener() {
@Override
public void onDismiss() {
backgroundAlpha((Activity) mContext,1f);
}
});
//设置弹出窗体显示时的动画,从底部向上弹出
this.setAnimationStyle(R.style.share_anim);
}
//设置添加屏幕的背景透明度
public void backgroundAlpha(Activity context,float bgAlpha){
WindowManager.LayoutParams params=context.getWindow().getAttributes();
params.alpha=bgAlpha;
context.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
context.getWindow().setAttributes(params);
}
}
分享的布局文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/pop_linearlayout"
android:layout_width="match_parent"
android:layout_height="1000dp"
android:orientation="vertical">
<RadioGroup
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:orientation="horizontal">
<RadioButton
android:id="@+id/share_wechat"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:button="@null"
android:drawableTop="@drawable/icon_share_wechat"
android:gravity="center"
android:onClick="shareClick"
android:text="微信"
android:textColor="#999" />
<RadioButton
android:id="@+id/share_wechat_timeline"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:button="@null"
android:drawableTop="@drawable/icon_share_wechat_timeline"
android:gravity="center"
android:onClick="shareClick"
android:text="朋友圈"
android:textColor="#999" />
<RadioButton
android:id="@+id/share_qq"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:button="@null"
android:drawableTop="@drawable/icon_share_qq"
android:gravity="center"
android:onClick="shareClick"
android:text="QQ"
android:textColor="#999" />
RadioGroup>
<RadioGroup
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:orientation="horizontal">
<RadioButton
android:id="@+id/share_sina"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:button="@null"
android:drawableTop="@drawable/icon_share_sina"
android:gravity="center"
android:onClick="shareClick"
android:text="微博"
android:textColor="#999" />
<RadioButton
android:id="@+id/share_qzone"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:button="@null"
android:drawableTop="@drawable/icon_share_qzone"
android:gravity="center"
android:onClick="shareClick"
android:text="Qzone"
android:textColor="#999" />
<RadioButton
android:id="@+id/share_hyperlink"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:button="@null"
android:drawableTop="@drawable/icon_share_hyperlink"
android:gravity="center"
android:onClick="shareClick"
android:text="复制链接"
android:textColor="#999" />
RadioGroup>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#f00" />
<RadioButton
android:id="@+id/share_cancel"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center"
android:button="@null"
android:onClick="shareClick"
android:text="取消"
android:textColor="#999" />
LinearLayout>
这样基本的就创建好了,其次就是在Mob云上创建应用,下载集成,
导入libs,add…导入assets,导入与java平级的cn文件夹
修改密钥,黏贴清单文件,
<activity
android:name="com.mob.tools.MobUIShell"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|orientation|screenSize"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden|adjustResize" >
<intent-filter>
<data android:scheme="tencent100371282" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
intent-filter>
<intent-filter>
<action android:name="com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY" />
<category android:name="android.intent.category.DEFAULT" />
intent-filter>
activity>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.BLUETOOTH" />
ok了