xml에서 구분선 넣기(View)

Posted by ITPangPang
2016. 11. 14. 22:13 안드로이드(android)/xml


xml에서 구분선 넣기

(View)



ㆍ 이번에는 이미지를 사용하지 않고 간단하게

    구분선을 넣는방법에 대해 알아보겠습니다.


ㆍ 수직, 수평 아주 간단하게 넣을 수 있습니다.



워낙 간단하니 코드를 바로 보겠습니다


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.tistory.itpangpang.viewpagerex.MainActivity">

<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_centerInParent="true"
android:background="#FF0000"/>

</RelativeLayout>





아주 간단하죠

height 2dp(두께)를

설정한 후에 

width(길이)에 match를 줬습니다

그리고 background로 빨간색을 주니

아주 간단하게 완성되었습니다.



<View
android:layout_width="2dp"
android:layout_height="100dp"
android:layout_centerInParent="true"
android:background="#FF0000"/>



이런식으로 원하는 길이와

두께를 넣어주시면 됩니다.




이렇게 만들기 위해서는

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.tistory.itpangpang.viewpagerex.MainActivity">

<LinearLayout
android:id="@+id/ll"
android:layout_width="match_parent"
android:layout_height="50dp"
>
<TextView
android:layout_width="0dip"
android:layout_height="match_parent"
android:layout_weight="1"
android:textSize="20dp"
android:gravity="center"
android:text="공지사항"/>
<View
android:layout_width="2dp"
android:layout_height="match_parent"
android:background="#BDBDBD"/>

<TextView
android:layout_width="0dip"
android:layout_height="match_parent"
android:layout_weight="1"
android:textSize="20dp"
android:gravity="center"
android:text="게시판"/>
<View
android:layout_width="2dp"
android:layout_height="match_parent"
android:background="#BDBDBD"/>

<TextView
android:layout_width="0dip"
android:layout_height="match_parent"
android:layout_weight="1"
android:textSize="20dp"
android:gravity="center"
android:text="오시는길"/>
</LinearLayout>

<View
android:layout_below="@+id/ll"
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_centerInParent="true"
android:background="#BDBDBD"
/>

</RelativeLayout>


이런식으로 잘 조합해서

알맞게 넣으시면 됩니다.



또한, 이렇게도

가능합니다!


일단 이렇게 만들기 위해서는

선을 2개 만들면 되겠죠?


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.tistory.itpangpang.viewpagerex.MainActivity">

<View
android:id="@+id/view"
android:layout_width="100dp"
android:layout_height="5dp"
android:background="#FF0000"
android:layout_centerInParent="true"
/>
<View
android:id="@+id/view2"
android:layout_width="100dp"
android:layout_height="5dp"
android:background="#FF0000"
android:layout_centerInParent="true"
/>

</RelativeLayout>


위 상태에서는

가운데에 겹쳐있겠죠



여기서 View를 회전시켜주면

됩니다.


뭐 Custom해서

 canvas를 rotate해도

되겠지만


가능하다는 것만

보여드리면 되므로

가장 간단한코드로

짜면

public class MainActivity extends AppCompatActivity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

View v = findViewById(R.id.view);
View v2 = findViewById(R.id.view2);

v.animate().rotationBy(45).start();
v2.animate().rotationBy(-45).start();
}
}


이런식으로 접근하면

선으로 나타낼 수 있는것은

모두 다 나타낼 수 있겠죠?


아 참고로 꼭 View로

안해도 됩니다.

ImageView로도 많이들

사용합니다


아주 쉬운내용이고

실전에서 은근히 많이 사용하는

부분이므로 한번씩 써보시길 바랍니다.


끝!