0

アクティビティに Caldroid カレンダーを含めようとしています。次のように、カレンダーが画面の 3/4 を占めるようにします。

ここに画像の説明を入力

ただし、常に画面の上部に表示されます。

これは私のレイアウトです:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:id="@+id/opciones"
        android:layout_width="299dp"
        android:layout_height="match_parent"
        android:orientation="horizontal">
    </LinearLayout>

    <LinearLayout
        android:id="@+id/calendar1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal">
    </LinearLayout>

</LinearLayout>

そして、これは私がカルドロイドを取り付ける方法です:

  FragmentTransaction t = getSupportFragmentManager().beginTransaction();
        t.replace(R.id.calendar1, caldroidFragment);
        t.commit();

StackOverFlow で検索しましたが、解決策が見つかりません。

4

2 に答える 2

0

最後に、独自のcustom_cellを実装して解決し、padding_bottomを変更してセルサイズを大きくしました。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/custom_cell"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical"
    android:padding="10dp" >

    <TextView
        android:id="@+id/tv1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="68dp"/>

</LinearLayout>

これは 1 つの解決策ですが、最もエレガントではないかもしれません。

于 2016-12-27T15:24:06.430 に答える
-1

これには 2 つの方法があります。

最初の方法:android:layout_weight=""代わりに静的サイズを 使用しますLinearLayout

例えば ​​:

        <LinearLayout
            android:id="@+id/parentLinearLayout"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <LinearLayout
                android:id="@+id/options"
                android:layout_width="0dp"
                android:layout_weight="0.3"
                android:layout_height="match_parent"
                android:orientation="horizontal">
            </LinearLayout>

            <LinearLayout
                android:id="@+id/calendar1"
                android:layout_width="0dp"
                android:layout_weight="0.7"
                android:layout_height="match_parent"
                android:orientation="horizontal">
            </LinearLayout>

        </LinearLayout>

2番目の方法: 使用PercentLayout(パーセンテージで作業し、おそらくクリア)

  1. 次の行を gradle 依存関係に追加して、アプリにライブラリを追加Percentします。

     dependencies {
    ...
    compile 'com.android.support:percent:24.1.2' //or any other versions
    ...
    }
    
  2. XML layout:

        <LinearLayout
            android:id="@+id/options"
            android:layout_width="0dp"
            app:layout_widthPercent="30%"
            android:layout_height="match_parent"
            android:orientation="horizontal">
        </LinearLayout>
    
        <LinearLayout
            android:layout_toRightOf="@id/options"
            android:id="@+id/calendar1"
            android:layout_width="0dp"
            app:layout_widthPercent="70%"
            android:layout_height="match_parent"
            android:orientation="horizontal">
    </LinearLayout>
    

次のことに注意してください。

  • http://schemas.android.com/apk/res-auto"レイアウトの最初の親に追加
  • android:layout_toRightOf2 番目のビューを指定します (これlayout_belowも可能です)
于 2016-12-26T18:40:46.723 に答える