一.效果图
1.png
2.png
二.简单实现的思路
就是在我们需要提示的页面上方覆盖一个半透明的activity,首先获取需要提示的位置坐标,然后传给上方覆盖的activity.最后在activity上面相应的位置画出指引内容.然后点击可关闭上方的提示页,从而取消提示.
三.代码实现
首先实现蒙版activity
public class TipsActivity extends Activity {
private static final String TAG = "TipsActivity";
private int[] mLocs;
@BindView(R.id.tips_rootview)
RelativeLayout mRlRootView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);//取消title
setContentView(R.layout.activity_tips);
Intent intent = getIntent();
mLocs = intent.getIntArrayExtra("loc");//获取坐标
ButterKnife.bind(this);
initView();
}
private void initView() {
PrintLog.d(TAG,"initView");
TipsView tipsView = new TipsView(this);//将坐标传给自定义view
tipsView.setCircleLocation(mLocs);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
mRlRootView.addView(tipsView, layoutParams);
}
@OnClick(R.id.tips_rootview)
public void clickCl