xml 파일 없이
자바 파일로만 소스 작성하고 있는데요
레이아웃도 자바 파일로...
그래서 소스는 간단해요
레이아웃 정의하고 걍 텍스트 4개만 뿌려줬어요
LinearLayout layoutheader = new LinearLayout(this);
String[] headercontent = new String[] {"구분", "계획", "실적", "전년"};
TextView text1, text2, text3, text4;
text1 = new TextView(this);
text2 = new TextView(this);
text3 = new TextView(this);
text4 = new TextView(this);
layoutheader.setOrientation(LinearLayout.HORIZONTAL);
text1.setText(headercontent[0]);
text2.setText(headercontent[1]);
text3.setText(headercontent[2]);
text4.setText(headercontent[3]);
layoutheader.addView(text1);
layoutheader.addView(text2);
layoutheader.addView(text3);
layoutheader.addView(text4);
setContentView(layoutheader);
이렇게요 그럼 출력은 잘 되는데
전 텍스트뷰 하나하나에 네모나게 테두리를 주고 싶거든요
속성을 어떻게 줘야하나요? ㅠㅠ
조언 좀 부탁드릴게요
xml은 사용하지 않고 자바로만 사용해용~~~
shape를 써보세요
상세한 수치값은 맘대로 변경해 쓰세요
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFFFF"/>
<stroke android:width="1px" android:color="#FFDADADA"/>
<padding android:left="1dp" android:top="1dp"
android:right="1dp" android:bottom="1dp" />
</shape>
요렇게 주시면 solid 속성에 지정한 색이 배경으로 설정되고
stroke는 테두리 설정이고 padding은 패딩 설정입니다.
직사각형 말고 모서리에 라운딩 처리를 해주고 싶으시면
<corners android:radius="5dp" /> 를 추가해 주시구요
배경색을 단색이 아닌 그라데이션을 주고싶다 하시면
<gradient android:startColor="#FF84C9DD" android:endColor="#FFC0E4EE"
android:angle="90"/>
이런식으로 주시면 그라데이션이 들어간 배경도 됩니다. 물론 여기에 corners를 넣어주시면
라운딩 처리도 되구요.....
무튼 이 xml 파일을 drawable 폴더에 만들어 두시고 레이아웃(xml)에서 텍스트뷰의 백그라운드에 지정해주시면
잘 처리 됩니다.
자바 소스로도 처리 가능하지만... 속도는ㅇ ㅣ게 빠르지영...
아, 자바 소스 상에서 setBackgroundResurce() 로는 테스트 해보지 않았지만 될겁니다 ^^;




xml 을 사용하는게 이래저래 좋으실테지만...굳이 소스로 처리하시겠다면...