ورود

View Full Version : زیبا سازی کنترلها در اندروید



sadaf_
پنج شنبه 06 تیر 1392, 18:21 عصر
چه راه حلی برای زیبا سازی وجود دارد؟
کامپوننتی برای اندروید ساخته شده؟

darkenerboy
جمعه 07 تیر 1392, 12:06 عصر
زیبا سازی چی ؟ :متعجب:
این دیگه چجور سوالیه ؟

sadaf_
جمعه 07 تیر 1392, 12:18 عصر
در برنامه نویسی ویندوز dll هایی هست برای اینکه مثلا button را زیباتر کنه
و یا کامپوننت مثل تلریک و . .. هست آیا برای اندروید چنین چیزهایی هست؟

matrix-program
جمعه 07 تیر 1392, 12:34 عصر
با این که زیاد اندروید کار نکردم ولی image button

matrix-program
جمعه 07 تیر 1392, 12:40 عصر
لیندا یه فیلم آموزشی در این رابطه داشت پیداش کردم حتما میذارم

hessam2003
جمعه 07 تیر 1392, 12:44 عصر
سلام.
یک جستجویی در گوگل بزنید وجود داره.
معمولا در اندروید خودشون این کامپوننت ها را ایجاد میکنند با دستور gerediant

rubiks.kde
جمعه 07 تیر 1392, 13:01 عصر
در برنامه نویسی ویندوز dll هایی هست برای اینکه مثلا button را زیباتر کنه
و یا کامپوننت مثل تلریک و . .. هست آیا برای اندروید چنین چیزهایی هست؟

منظورتون اینه که قیافه دکمه و ... رو تغییر بدید.مثل این چیزی که عکسش رو گذاشتم ؟

106262

matrix-program
جمعه 07 تیر 1392, 13:04 عصر
با nine patch
دوستان این اینترنت من امروز داغونه نمیتونم آپلود کنم اگه تونستم یه پ خ میدم

sadaf_
جمعه 07 تیر 1392, 13:18 عصر
منظورتون اینه که قیافه دکمه و ... رو تغییر بدید.مثل این چیزی که عکسش رو گذاشتم ؟

106262
بله
ویا اینکه کامپوننت آماده باشه که button و ... را داشته باشه

rubiks.kde
جمعه 07 تیر 1392, 13:41 عصر
بله
ویا اینکه کامپوننت آماده باشه که button و ... را داشته باشه

من تا به الان کامپوننت آماده ندیدم ولی برای ساخت این چیزا خودتون باید از صفر شروع به کار کنید.
همون طور که میدونید هر view برای خودش میتونه یه style ، پس زمینه و ... داشته باشه.

شما این استایلها رو میتونید با ابزارهای که هست ایجاد کنید مثلا با ابزارها drawable(همون فایل های xml) می تونید رنگ ، اندازه ، شکل ، و ... برای یک view رو تغییر بدید مثلا مثل نمونه زیر :

<?xml version="1.0" encoding="utf-8"?>
<!-- res/drawable/edittext_rounded_corners.xml -->
<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:state_focused="true" android:state_pressed="true"><shape>
<solid android:color="#eae8e8" />

<stroke android:width="2dp" android:color="#00bc8d" />

<corners android:radius="18dp" />
</shape></item>
<item android:state_focused="false" android:state_pressed="true"><shape>
<solid android:color="#eae8e8" />

<stroke android:width="2dp" android:color="#00bc8d" />

<corners android:radius="18dp" />
</shape></item>
<item android:state_focused="true" android:state_pressed="false"><shape>
<solid android:color="#eae8e8" />

<stroke android:width="2dp" android:color="#00bc8d" />

<corners android:radius="18dp" />
</shape></item>
<item android:state_focused="false" android:state_pressed="false"><shape>
<solid android:color="#eae8e8" />

<stroke android:width="2dp" android:color="#FFFFFF" />

<corners android:radius="18dp" />
</shape></item>
<item android:state_enabled="true"><shape>
<solid android:color="#eae8e8" />

<stroke android:width="2dp" android:color="#FFFFFF" />

<corners android:radius="18dp" />
</shape></item>

</selector>

این یه فایل xml از نوع selector هست که اگه این فایل رو به عنوان background یک edittext ست کنید خروجی میشه مثل edittext هایی که توی عکس بالا گذاشتم.

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

یه روش دیگه هم استفاده از عکسهایی هست که در فتوشاپ طراحی میشه و از اونا میشه برای کنترلهای زیادی استفاده کرد مثلا مجموعه زیر رو در نظر بگیرید :

106269

البته شما از فایل لایه باز فتوشاپ این عکس استفاده میکنید (مثل اون چیزی که با css انجام میدن توی طراحی وب).
برای مثال برای در آوردن شکل دکمه ها مثل بالا این طوری عمل میکنید:

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:state_pressed="true"
android:drawable="@drawable/btn_all_select">
</item>

<item android:state_focused="true"
android:drawable="@drawable/btn_all_select">
</item>

<item
android:drawable="@drawable/btn_green_normal">
</item>

</selector>

باز هم از یه فایل selector استفاده میکنید ولی از عکسها استفاده میکنید (برای حالتهای مختلف رویداد یک دکمه یه عکس در نظر میگیرید)