PDA

View Full Version : Layout متفاوت برای Landscape و portrait



harani
شنبه 23 دی 1391, 13:30 عصر
سلام دوستان آیا راهی است که بدون ساختن فولدر layou-land محتوی layout اکتیوتی رو برای هر دو حالت دستگاه (land و port) متفاوت ایجاد کنم ؟؟؟؟؟

shahin bahari
شنبه 23 دی 1391, 16:45 عصر
یه چیز به ذهنم رسید با خوندن سوالتون. خودم تست نکردم هنوز.
اول تابع on create شما چک کنید که صفحه landscape هست و یا portrait .توی یه شرط setContentView های مختلفی بدید بهش. به هر حال استفاده از پوشه layout-land کار قشنگ تری هست. دلیل خاصی دارید که نمیخواید ازش استفاده کنید/؟

harani
شنبه 23 دی 1391, 17:08 عصر
من از layot-land استفاده میکنم ولی در حالت land دستگاه این layout رو نیاره . اسم layout های xml دو port و land حتماً باید یکی باشه دیگه ؟؟ به نظر شما مشکل کارم کجاست ؟؟

harani
یک شنبه 24 دی 1391, 11:30 صبح
آیا اسم layout فولدر layout-land با اسم layout اصلی باید یکی باشه ؟؟؟؟؟
پس چرا برنامه ی من این دو رو تشخیص نمیده ؟؟؟؟؟؟
من تو manifest برنامه تو قسمت activity از کد android:configChanges="screenSize|keyboardHidden|orientation" استفاده کردم به نظر شما به خاطر این که نیست ؟؟؟
خواهشمندم راهنمایی کنید خیلی ضروری و فوری

shahin bahari
یک شنبه 24 دی 1391, 19:35 عصر
. اسم layout های xml دو port و land حتماً باید یکی باشه دیگه ؟؟
بله حتما باید یکی باشه و ویجت ها ID یکسانی داشته باشند. eclipse اجازه نمیده 2 تا فایل همنام ایجاد کنید. فایلتون رو تو فولدر layout-land کپی کنید و محتواش رو اون جور که نیازه تغییر بدید.

من تو manifest برنامه تو قسمت activity از کد 1
android:configChanges="screenSize|keyboardHidden|o rientation"



استفاده کردم به نظر شما به خاطر این که نیست ؟؟؟
راستش من نمیدونم این کد چه تاثیری داره. کامنت کنیدش ببینید مشکل برطرف میشه یا نه!
من با همین حالت که یه فولدر land بسازم و..... بدون مشکل تونستم جواب بگیرم. فقط حواستون باشه با چرخیدن صفحه برنامه pause میشه و دوباره از onCreat اجرا میشه!