Ali BBH 27 ارسال شده در 16 شهریور، ۱۳۹۵ اشتراک گذاری ارسال شده در 16 شهریور، ۱۳۹۵ با سلام من یه برنامه دارم با یه اکتیویتی و 14 لایوت و توی اکتیویتیم توی لایوت ها هی جابجا میشم حالا یه مشکل فقط وجود داره موقع ای که دکمه ی Back گوشی رو بزنی کامل برنامه رو میبنده و الان اومدم جلوی دکمه ی Back رو میگیریم وبهش میخوام شرط بدم که اره اگه فلا لایوت باز بود بیا فولان لایوت را ببند و و لایوت مربوطشو باز کن که الان مشکلم فقط اینه که نمیدونم چجوری تشخیص بدم در حال حاظر چه لایوتی فعال است لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Ali BBH 27 ارسال شده در 16 شهریور، ۱۳۹۵ سازنده اشتراک گذاری ارسال شده در 16 شهریور، ۱۳۹۵ خب من یه روش غیر اصولی پیدا کردم ولی خب ساده تر از اونه و تو برنامه های حجیم راحت میشه نام لایوت جاری رو بفهمی و دستورات مورد نظرتو بدی, چون تو روش قبلی باید هرجا لایوتی رو فراخوانی میکردی یه عددی رو اختصاص میدادی به یه متغیر و......که یکم مشکله تو برنامه های حجیم و پیچیده. روش راحت تر اینه که اصلا مهم نیست چند تا لایوت داری و بگردی تو کد نویسیت ببینی کجا لایوتی رو فراخوانی کردی فقط کافیه یه لیبل تو هر لایوتت اضافه کنی tag اونرو برابر یه مقدار دلخواه بکنی مثلا (2121) وبیای تو text لیبل نام لایوتی که ساختی بزاری و Visible برابر False قرار بدی بعد به این شکل کد نویسی کنی و نام لایوت جاری رو متوجه بشی : For Each v As View In Activity.GetAllViewsRecursive If v Is Label Then Dim lname1 As Label = v Try If lname1.Tag="2121" Then Select lname1.Text Case "listuser1" ToastMessageShow( lname1.Text,True) Case "addIniLyout1" ToastMessageShow( lname1.Text,True) Case "addlyoutValue1" ToastMessageShow( lname1.Text,True) Case "AddPersentListLyout1" ToastMessageShow( lname1.Text,True) End Select End If Catch Log("Error") End Try End If Next همه ی ویو هارو میگیری بعد اونایی که لیبل هستنو مشخص میکنی بعد اونی که تگش برابر تگی هست که انتخاب کردین انتخاب میکنی و متنشو میزاری تو select case و حالا میتونی بفهمی لاویت جاریت کدومه و بسته بهش کدنویسی کنی لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Negan 1,300 ارسال شده در 16 شهریور، ۱۳۹۵ اشتراک گذاری ارسال شده در 16 شهریور، ۱۳۹۵ خب میتونی ی متغیر از نوع اینتجر تعریف کنی و وقتی هر لایوت رو لود میکنی اون متغیر رو یه عدد بهش بدی مثلا برا لایوت اول 1 و وقتی رفتی دوم دو رو بدی و توی ساب کی پرس هم با سلکت کیس و سلکت کردن اون متغیر میتونی بفهمی کدوم لایوتی لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Ali BBH 27 ارسال شده در 16 شهریور، ۱۳۹۵ سازنده اشتراک گذاری ارسال شده در 16 شهریور، ۱۳۹۵ در 5 دقیقه قبل، محمد فرجی گفته است : خب میتونی ی متغیر از نوع اینتجر تعریف کنی و وقتی هر لایوت رو لود میکنی اون متغیر رو یه عدد بهش بدی مثلا برا لایوت اول 1 و وقتی رفتی دوم دو رو بدی و توی ساب کی پرس هم با سلکت کیس و سلکت کردن اون متغیر میتونی بفهمی کدوم لایوتی من قبلا از این راه استفاده میکردم ولی الان من 14 تا لایوت دارم و 38 بار به شیوه های مختلف هرکدوم از این لاویت هارو فراخوانی کردم و 3024 خط کد شده برنامه فعلا و الان به حدی وسعت کار زیاد شده که خیلی خر تو خر شده و پیچیده شده و من بیام دوباره تک به تک کد هارو نگاه کنم و ببنیم کجا کدوم لایوتو فراخوانی کردم یه شماره بدم بهش و تو متغیرم ذخیره کنم یکم سخته به هر حال ممنون گفتم شاید راه راحت تری باشه برای این کار که مثل اینکه نیست لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
سوال
Ali BBH 27
با سلام
من یه برنامه دارم با یه اکتیویتی و 14 لایوت
و توی اکتیویتیم توی لایوت ها هی جابجا میشم حالا یه مشکل فقط وجود داره موقع ای که دکمه ی Back گوشی رو بزنی کامل برنامه رو میبنده
و الان اومدم جلوی دکمه ی Back رو میگیریم وبهش میخوام شرط بدم که اره اگه فلا لایوت باز بود بیا فولان لایوت را ببند و و لایوت مربوطشو باز کن
که الان مشکلم فقط اینه که نمیدونم چجوری تشخیص بدم در حال حاظر چه لایوتی فعال است
لینک ارسال
به اشتراک گذاری در سایت های دیگر
3 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.