PDA

View Full Version : نحوه تغییر Parent در ویو ها ؟ امکان پذیر هس؟



hamedg1366
شنبه 22 آذر 1393, 16:57 عصر
دوستان به تصویر زیر توجه کنید در اینجا ImageView و Button هر دو فرزند لایوت main.xml بحساب میان.

چطور Parent دکمه رو ImageView قرار بدم ؟ و Parent ایمیج ویو رو main.xml قرار بدم ؟





126551

hamedg1366
شنبه 22 آذر 1393, 22:48 عصر
:اشتباه::ناراحت:

up...

Nevercom
یک شنبه 23 آذر 1393, 00:16 صبح
من درست متوجه نشدم و البته در مورد لایه های اندروید خیلی هم حرفه ای نیستم.
اما گمان می کنم ImageView نمیتونه ویویی رو بعنوان فرزند داشته باشه، تنها ویوهایی که حالت Container دارن میتونن ویو های دیگه رو در خودشون جا بدن

hamedg1366
یک شنبه 23 آذر 1393, 01:36 صبح
من درست متوجه نشدم و البته در مورد لایه های اندروید خیلی هم حرفه ای نیستم.
اما گمان می کنم ImageView نمیتونه ویویی رو بعنوان فرزند داشته باشه، تنها ویوهایی که حالت Container دارن میتونن ویو های دیگه رو در خودشون جا بدن


منم حرفه ای نیستم گیر کردم


دوست عزیز "حالت Container" اطلاعاتی دربارش ندارم چیه اصلا؟

Nevercom
یک شنبه 23 آذر 1393, 11:44 صبح
مثلاً LinearLayout خودش یک محفظه ای هست برای نمایش ویوهای دیگه، این یک Container هست.
چه دلیلی داره که قصد دارید برای ImageView چند ویوی فرزند داشته باشید ؟

hamedg1366
یک شنبه 23 آذر 1393, 12:10 عصر
مثلاً LinearLayout خودش یک محفظه ای هست برای نمایش ویوهای دیگه، این یک Container هست.
چه دلیلی داره که قصد دارید برای ImageView چند ویوی فرزند داشته باشید ؟


توی برنامه میخوام Buttonهام توی یه کادر قرار بگیرن برای ایجاد نظم برای اندازه های مختلف ، اگه بتونم ImgeView رو پدر این دکمه ها کنم حداقل خیالم راحت میشه دکمه ها نمیپرن بیرون ازش !

شاید باورتون نشه برای کد نویسی برنامه 1 هفته وقت گذاشتم اما برای طراحی Lauotهای برنامه تقریبا 3 هفتش دارم تلاش میکنم به هیچ جائی نرسیدم ، تا دلتون بخواد توی نت سرچ کردم و آموزش دیدم مثلا :

لینک 1 (http://stackoverflow.com/questions/16706076/font-size-and-images-for-different-device)

لینک 2 (http://stackoverflow.com/questions/10574363/android-splash-screen-image-sizes-to-fit-all-devices/15744389#15744389)

اما هنوزم برای گوشی های مختلف با اندازه های مختلف توی مشکل هستم .

از RelativeLayout استفاده میکنم و با LinearLayout بجائی نرسیدم ، توی گوشی های با اندازه های مختلف شگفت زده میشم !

در کل بی تجربه هستم توی طراحی لطفا از تجربیاتتون بی نصیبم نذارین . کلافه شدم دیگه :عصبانی++:


(یادش بخیر توی اپلیکیشن نویسی چقدر راحت بودیم یه فرمی طراحی میکردیم و همون فرم برای همه کامپیوترها نشون داده میشد )

saeidd
یک شنبه 23 آذر 1393, 21:07 عصر
توی برنامه میخوام Buttonهام توی یه کادر قرار بگیرن برای ایجاد نظم برای اندازه های مختلف ، اگه بتونم ImgeView رو پدر این دکمه ها کنم حداقل خیالم راحت میشه دکمه ها نمیپرن بیرون ازش !

شاید باورتون نشه برای کد نویسی برنامه 1 هفته وقت گذاشتم اما برای طراحی Lauotهای برنامه تقریبا 3 هفتش دارم تلاش میکنم به هیچ جائی نرسیدم ، تا دلتون بخواد توی نت سرچ کردم و آموزش دیدم مثلا :

لینک 1 (http://stackoverflow.com/questions/16706076/font-size-and-images-for-different-device)

لینک 2 (http://stackoverflow.com/questions/10574363/android-splash-screen-image-sizes-to-fit-all-devices/15744389#15744389)

اما هنوزم برای گوشی های مختلف با اندازه های مختلف توی مشکل هستم .

از RelativeLayout استفاده میکنم و با LinearLayout بجائی نرسیدم ، توی گوشی های با اندازه های مختلف شگفت زده میشم !

در کل بی تجربه هستم توی طراحی لطفا از تجربیاتتون بی نصیبم نذارین . کلافه شدم دیگه :عصبانی++:


(یادش بخیر توی اپلیکیشن نویسی چقدر راحت بودیم یه فرمی طراحی میکردیم و همون فرم برای همه کامپیوترها نشون داده میشد )
سلام.
ImageView کمک تون نمی کنه برای اینکار، شما باید از همون لایوت ها استفاده کنی و پیشنهادم LinearLayout هستش. چون به راحتی میشه این کار رو باهاش مدیریت کرد بطوری که در گوشی های مختلف به هم نمی ریزه.
پس اول دکمه هات رو در یه LinearLayout اونم از نوع vertical قرار میدی، بعد با خاصیت gravity و همینطور خاصیت weight مربوط به خود لایوت و همچنین تک تک دکمه ها کار می کنی و تنظیمشون می کنی. با خاصیت weight شما مشخص میکنی که هر View چه نسبتی از صفحه نمایش رو اشغال کنه. مثلا اگه 4 تا دکمه داری و میخوای در وسط صفحه قرار بگیرن و هر کدوم یک چهارم صفحه رو بگیره،(از نظر height ـ)، gravity مربوط به LinearLayout رو right میذاری، بعد خاصیت height همه ی دکمه ها رو صفر میکنی و خاصیت weight شون رو برابر یک قرار میدی.

باز اگه مشکل داشتی بگو بیشتر توضیح بدم

hamedg1366
یک شنبه 23 آذر 1393, 22:20 عصر
ImageView کمک تون نمی کنه برای اینکار، شما باید از همون لایوت ها استفاده کنی و پیشنهادم LinearLayout هستش. چون به راحتی میشه این کار رو باهاش مدیریت کرد بطوری که در گوشی های مختلف به هم نمی ریزه.
پس اول دکمه هات رو در یه LinearLayout اونم از نوع vertical قرار میدی، بعد با خاصیت gravity و همینطور خاصیت weight مربوط به خود لایوت و همچنین تک تک دکمه ها کار می کنی و تنظیمشون می کنی. با خاصیت weight شما مشخص میکنی که هر View چه نسبتی از صفحه نمایش رو اشغال کنه. مثلا اگه 4 تا دکمه داری و میخوای در وسط صفحه قرار بگیرن و هر کدوم یک چهارم صفحه رو بگیره،(از نظر height ـ)، gravity مربوط به LinearLayout رو right میذاری، بعد خاصیت height همه ی دکمه ها رو صفر میکنی و خاصیت weight شون رو برابر یک قرار میدی.





دوستان امکانش هس همین رو که دوستمون گفتن رو بصورت کد از XML برام بذارین ؛ از بس کار کردم روش و بجائی نرسیدم حالم بهم میخوره ازش.