首先在android中启动Tutorial

编程入门 行业动态 更新时间:2024-10-24 21:34:33
首先在android中启动Tutorial - 用片段显示案例视图(First launch Tutorial in android - Show case view with fragment)

经过大量搜索,我在Github上找到了一个很好的存储库 ,显示了我想要的东西,但问题是我在我的应用程序中使用了片段,我不知道如何使用库! 在我的第一次尝试它给我跟随错误

"java.lang.IllegalArgumentException: width and height must be > 0"

我在这里找到了一个解决方案,但现在它没有显示任何东西。(事实上,演示屏幕没有显示)可以提供一段与片段一起工作正常的代码吗? 或者帮我解决这个问题?

谢谢。

After searching a lot I found a nice repository on Github which show something that i want , but the problem is I use fragments in my app and i don't know how to use library ! in my first attemp it gives me following Error

"java.lang.IllegalArgumentException: width and height must be > 0"

I found a solution HERE but now it doesn't show something.( in fact demo screen doesn't show up ) can any give a piece of code which works fine with fragment ? or help me how to solve this ?

Thanks.

最满意答案

嘿,男人刚刚为你做了样品

我真的没有做任何事只是使用onCreateView中的库,它工作

@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.fragment_main, container, false); new ShowcaseView.Builder(getActivity()) .setTarget(new ActionViewTarget(getActivity(), ActionViewTarget.Type.HOME)) .setContentTitle("ShowcaseView") .setContentText("This is highlighting the Home button") .hideOnTouchOutside() .build(); return rootView; }

评论中的问题更新

只需在onActivityCreated方法上添加代码,检查创建的示例

public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); if (savedInstanceState==null){ View view = getActivity().findViewById(R.id.hometxv); view.post(new Runnable() { @Override public void run() { if (isAdded()) { ShowcaseView sv; ViewTarget target=new ViewTarget(R.id.hometxv,getActivity()); RelativeLayout.LayoutParams lps = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lps.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); lps.addRule(RelativeLayout.ALIGN_PARENT_LEFT); int margin = ((Number) (getResources().getDisplayMetrics().density * 12)).intValue(); lps.setMargins(margin, margin, margin, margin); sv = new ShowcaseView.Builder(getActivity(), true) .setTarget(target) .setContentTitle("hold up") .setContentText("smoke weed everyday") .setShowcaseEventListener(new OnShowcaseEventListener() { @Override public void onShowcaseViewHide(ShowcaseView showcaseView) { } @Override public void onShowcaseViewDidHide(ShowcaseView showcaseView) { } @Override public void onShowcaseViewShow(ShowcaseView showcaseView) { } }) .build(); sv.setButtonPosition(lps); } } }); } }

享受:D

hey man just made a sample here for you

i literally done nothing just used the library inside the onCreateView and it worked

@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.fragment_main, container, false); new ShowcaseView.Builder(getActivity()) .setTarget(new ActionViewTarget(getActivity(), ActionViewTarget.Type.HOME)) .setContentTitle("ShowcaseView") .setContentText("This is highlighting the Home button") .hideOnTouchOutside() .build(); return rootView; }

Update for the question in the comment

just add your code on the onActivityCreated method check the sample created

public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); if (savedInstanceState==null){ View view = getActivity().findViewById(R.id.hometxv); view.post(new Runnable() { @Override public void run() { if (isAdded()) { ShowcaseView sv; ViewTarget target=new ViewTarget(R.id.hometxv,getActivity()); RelativeLayout.LayoutParams lps = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lps.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); lps.addRule(RelativeLayout.ALIGN_PARENT_LEFT); int margin = ((Number) (getResources().getDisplayMetrics().density * 12)).intValue(); lps.setMargins(margin, margin, margin, margin); sv = new ShowcaseView.Builder(getActivity(), true) .setTarget(target) .setContentTitle("hold up") .setContentText("smoke weed everyday") .setShowcaseEventListener(new OnShowcaseEventListener() { @Override public void onShowcaseViewHide(ShowcaseView showcaseView) { } @Override public void onShowcaseViewDidHide(ShowcaseView showcaseView) { } @Override public void onShowcaseViewShow(ShowcaseView showcaseView) { } }) .build(); sv.setButtonPosition(lps); } } }); } }

enjoy :D

更多推荐

本文发布于:2023-08-03 07:46:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1385254.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:android   Tutorial

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!