2016-04-28 76 views
0

我有两个视图,一个日视图和一个事件视图作为日历的一部分。我希望我的事件在宽度上填充日视图(正在工作),但是当我在相同位置/时间添加另一个时,我希望它们分割宽度...我使用java动态添加事件。是否有我可以使用的属性,以便视图不重叠?停止视图在相对布局中水平重叠

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:id="@+id/dayView" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@drawable/day_view"> 

</RelativeLayout> 

<?xml version="1.0" encoding="utf-8"?> 
<ie.test.calendar.CalendarEventView 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="horizontal" 
android:id="@+id/eventView" 
android:background="@drawable/event_view" 
android:layout_width="match_parent" 
android:layout_height="wrap_content"> 

    <TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/eventTextView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:paddingTop="3dp" 
    android:paddingBottom="5dp" 
    android:paddingLeft="5dp" 
    android:paddingRight="3dp" 
    android:textAppearance="@android:style/TextAppearance.Medium" 
    android:textColor="@android:color/white"/> 

</ie.test.calendar.CalendarEventView> 

回答

0

我认为你需要使用Linier布局作为水平方向的父视图。并且还使用宽度的概念。它会根据孩子的数量

0

devide你父视图就以​​

你可以在运行时设置的规则,使用的ID来看看。

layoutparams.addRule(RelativeLayout.ALIGN_RIGHT, R.id.id1) 

虽然,我认为使用LinearLayout会简单得多。

+0

所以我必须知道在插入第一个事件时有一个事件将被添加到相同的位置?然后为它腾出空间? – ovg