مریم السادات 2 ارسال شده در ۱۹ اردیبهشت ۱۴۰۰ گزارش اشتراک گذاری ارسال شده در ۱۹ اردیبهشت ۱۴۰۰ سلام من یه باتن نویگیشن با عنوان راهنما در برنامه دارم که تابع های مورد نیاز برای ایکنهایی که میخوام راهنما داشته باشه ایجاد کردم هر تابع موقع دیسمیز شدن تابع بعدی رو فراخوانی میکنه حالا یه مشکلی هست که موقع دکه برگشت دوباره به روال خودش ادامه میده و چرخه رو قطع نمیکنه و برنمیگرده به صفحه اصلی یه کدهایی برای چک کردن هم تو تابع ها و هم تو onbackpressed ایجاد کردم ولی عمل نمیکنه لطفا راهنمایی کنید این کدها void help() { showTapTarget=1; final SpannableString spannedDesc = new SpannableString("با کليک بر روي هر قسمت در اين صفحه توضيحات آن بخش داده مي شود."); TapTargetView.showFor(this, TapTarget.forView(findViewById(R.id.item_5), "راهنما", spannedDesc) .cancelable(true) .drawShadow(true) .dimColor(android.R.color.tab_indicator_text) .outerCircleColor(R.color.outerCircleColor) .targetCircleColor(R.color.targetCircleColor) .transparentTarget(true) .targetRadius(26) .outerCircleAlpha(0.96f) .titleTextSize(22) .descriptionTextSize(18) .descriptionTextColor(android.R.color.white) .textColor(android.R.color.white) .titleTextColor(android.R.color.white) .textColor(android.R.color.white) .textTypeface(Typeface.createFromAsset(getAssets(), "fonts/Yekan.ttf")) .tintTarget(false), new TapTargetView.Listener() { @Override public void onTargetClick(TapTargetView view) { super.onTargetClick(view); } @Override public void onOuterCircleClick(TapTargetView view) { super.onOuterCircleClick(view); view.dismiss(true); } @Override public void onTargetDismissed(TapTargetView view, boolean userInitiated) { super.onTargetDismissed(view, userInitiated); view.dismiss(userInitiated); if (showTapTarget == 1) { help_menu(); } } }); } void help_menu() { showTapTarget=1; final SpannableString spannedDesc = new SpannableString("با کليک بر روي اين آيکن وارد بخش اطلاعات مربوط به کاربري مي شويد و مي توانيد به تکميل اطلاعات خود بپردازيد."); TapTargetView.showFor(this, TapTarget.forView(findViewById(R.id.toolbarToggle), "منو", spannedDesc) .cancelable(true) .drawShadow(true) .dimColor(android.R.color.tab_indicator_text) .outerCircleColor(R.color.outerCircleColor) .targetCircleColor(R.color.targetCircleColor) .transparentTarget(true) .targetRadius(28) .outerCircleAlpha(0.96f) .titleTextSize(22) .descriptionTextSize(18) .descriptionTextColor(android.R.color.white) .textColor(android.R.color.white) .titleTextColor(android.R.color.white) .textColor(android.R.color.white) .textTypeface(Typeface.createFromAsset(getAssets(), "fonts/Yekan.ttf")) .tintTarget(false), new TapTargetView.Listener() { @Override public void onTargetClick(TapTargetView view) { super.onTargetClick(view); Log.d("lklk89hk", "onTargetClick"); } @Override public void onOuterCircleClick(TapTargetView view) { super.onOuterCircleClick(view); view.dismiss(true); Log.d("lklk89hk", "onOuterCircleClick"); } @Override public void onTargetDismissed(TapTargetView view, boolean userInitiated) { super.onTargetDismissed(view, userInitiated); view.dismiss(userInitiated); Log.d("lklk89hk", "onTargetDismissed"); if (showTapTarget == 1) { help_wheelview(); } } @Override public void onTargetCancel(TapTargetView view) { super.onTargetCancel(view); Log.d("lklk89hk", "onTargetCancel"); view.dismiss(); } }); } اینم کد onbackpreessed public void onBackPressed() { if (showTapTarget==1) { showTapTarget=0; } } else { super.onBackPressed(); } } } نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .