Первый запуск Учебник в Android - Показать случай с фрагментом

После долгих поисков я нашел хороший репозиторий на Github, который показывает то, что я хочу, но проблема в том, что я использую фрагменты в своем приложении, и я не знаю, как использовать библиотеку! в моей первой попытке это дает мне следующую ошибку

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

Я нашел решение ЗДЕСЬ, но теперь оно не показывает что-то.(На самом деле демонстрационный экран не отображается) может ли какой-нибудь фрагмент кода, который отлично работает с фрагментом? или помогите как решить это?

Благодарю.

1 ответ

Решение

Эй человек только что сделал образец для вас

я буквально ничего не сделал, просто использовал библиотеку внутри 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

Другие вопросы по тегам