
To define our shape as a drawable, create XML(s) under /res/drawable/ folder.
/res/drawable/redroundrect.xml
1
2
3
4
5
6
7
8
9
10
11
12
| <solid android:color="#FFFF0000"/> <corners android:radius="15dp" /> <padding android:left="20dp" android:top="20dp" android:right="20dp" android:bottom="2dp" /></shape> |
/res/drawable/greenroundrect.xml
1
2
3
4
5
6
7
8
9
10
11
12
| <solid android:color="#FF00FF00"/> <corners android:radius="15dp" /> <padding android:left="20dp" android:top="20dp" android:right="20dp" android:bottom="2dp" /></shape> |
/res/drawable/blueroundrect.xml
1
2
3
4
5
6
7
8
9
10
11
12
| <solid android:color="#FF0000FF"/> <corners android:radius="15dp" /> <padding android:left="20dp" android:top="20dp" android:right="20dp" android:bottom="2dp" /></shape> |
Using it inside main.xml
<?xml version="1.0" encoding="utf-8"?> android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="RED in XML" android:background="@drawable/redroundrect" /><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="GREEN in XML" android:background="@drawable/greenroundrect" /><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="BLUE in XML" android:background="@drawable/blueroundrect" /><TextView android:id="@+id/javared" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="RED using Java"/><TextView android:id="@+id/javagreen" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="GREEN using Java"/><TextView android:id="@+id/javablue" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="BLUE using Java"/></LinearLayout>
In Java code
package com.AndroidTestResources;
import android.app.Activity;
import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.GradientDrawable;
import android.os.Bundle;
import android.widget.TextView;
public class AndroidTestResourcesActivity extends Activity {
TextView javaRed, javaGreen, javaBlue;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
javaRed = (TextView)findViewById(R.id.javared);
javaGreen = (TextView)findViewById(R.id.javagreen);
javaBlue = (TextView)findViewById(R.id.javablue);
Drawable redRoundRect
= getResources().getDrawable(R.drawable.redroundrect);
Drawable greenRoundRect
= getResources().getDrawable(R.drawable.greenroundrect);
Drawable blueRoundRect
= getResources().getDrawable(R.drawable.blueroundrect);
javaRed.setBackgroundDrawable(redRoundRect);
javaGreen.setBackgroundDrawable(greenRoundRect);
javaBlue.setBackgroundDrawable(blueRoundRect);
}
}
No comments:
Post a Comment