Highlight icon indicating copy to clipboard operation
Highlight copied to clipboard

问一下在fragment中如何设置

Open EesiLife opened this issue 8 years ago • 7 comments

在fragment中设置如下: mHighLight = new HighLight(getActivity())// .anchor(view.findViewById(R.id.id_container)) .addHighLight(R.id.vp_pager_f,R.layout.info_main_f, new OnBottomPosCallback(),new RectLightShape()); mHighLight.show(); mHighLight.setClickCallback(new HighLight.OnClickCallback() { @Override public void onClick() { // GCSharePreferenceUtils.putBoolean(getActivity(),IS_SHOW_MAIN_F, false); } });

报错为:java.lang.NullPointerException at common.highlight.HighLight.show(HighLight.java:192)

192行为: parent.removeView(mAnchor);

EesiLife avatar Oct 03 '16 11:10 EesiLife

我觉得你可以考虑下是不是mHighLight = new HighLight(getActivity())// 传入activity不能为空 .anchor(view.findViewById(R.id.id_container))你的这二句出错了,fragment里面如果只是遮罩部分,传view的根布局ID,如果是想达到在activity里面显示的话,需要传父activity的根布局ID

hpuhsp avatar Oct 08 '16 07:10 hpuhsp

@hpuhsp 我后来改了下,在fragment的Activity布局中加了hightLIght布局,只要跟fragment布局中要高亮的布局位置一致就可以了。 另外 关于view加载未完成的问题,在Activity中需要重写 @Override public void onWindowFocusChanged(boolean hasFocus) { // TODO Auto-generated method stub super.onWindowFocusChanged(hasFocus); showTipViewMainF(); }

EesiLife avatar Oct 21 '16 03:10 EesiLife

fragement 大家有弄好的吗 代码是啥啊?

luyoulong avatar Oct 27 '16 09:10 luyoulong

我fragment继承的是basefragment(里面定义的rootview)。在你需要高亮的fragment里面直接code: public void showTipView(View view){ mHightLight = new HighLight(getActivity()) .anchor(rootView)//如果是Activity上增加引导层,不需要设置anchor,弘扬神库里有默认的。 .addHighLight(view,R.layout.info_gravity_right_up,new OnBottomPosCallback(60),new CircleLightShape()); mHightLight.show(); } 这段代码我用于FloatingActionButton.做的点击事件。

pumatus avatar Nov 11 '16 05:11 pumatus

@siyu3223 在Activity的时候加载,那如何控制他在Fragment显示呢?

BryceLee avatar Jan 05 '17 03:01 BryceLee

这个为什么不能主动触发?非要绑定到点击事件?

woshiyanxiong avatar Jan 18 '17 05:01 woshiyanxiong

@Hellozhongxin 那很简单啊 在fragment中调用Activity中显示HighLight布局的方法呀

EesiLife avatar May 04 '17 13:05 EesiLife