如何在可穿戴列表行中显示2个以上的项目

时间:2015-09-03 17:51:48

标签: android layout wear-os

我需要使用wearableListView,我需要在其中显示带有2个TextView的ImageView(一个是标签,另一个是该文本的描述)。
以下是我使用的列表项布局,但无法在其他下方显示TextView:

<wareablelist.andr.com.webservicewearablelist.WearableListItemLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:gravity="center_vertical"
    android:layout_width="match_parent"
    android:layout_height="80dp">
    <ImageView
        android:id="@+id/circle"
        android:layout_height="20dp"
        android:layout_margin="16dp"
        android:layout_width="20dp"
        android:src="@drawable/wl_circle"/>
    <TextView
        android:id="@+id/name"
        android:gravity="center_vertical|left"
        android:layout_width="wrap_content"
        android:layout_marginRight="5dp"
        android:layout_height="match_parent"
        android:fontFamily="sans-serif-condensed-light"
        android:lineSpacingExtra="-4sp"
        android:textColor="@color/text_color"
        android:textSize="16sp"/>

    <TextView
        android:id="@+id/item3"
        android:gravity="center_vertical"
        android:layout_width="wrap_content"
        android:layout_marginRight="5dp"
        android:layout_height="match_parent"
        android:text="item3"
        android:fontFamily="sans-serif-condensed-light"
        android:lineSpacingExtra="-4sp"
        android:textColor="@color/text_color"
        android:textSize="16sp"/>
</wareablelist.andr.com.webservicewearablelist.WearableListItemLayout>


任何人都可以帮我为ListView连续显示3个以上的项目吗?

1 个答案:

答案 0 :(得分:0)


我找到了溶胶。为此我改变了布局如下:

<?xml version="1.0" encoding="utf-8"?>
<wareablelist.andr.com.webservicewearablelist.WearableListItemRelativeLayout 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" tools:context=".MainActivity" tools:deviceIds="wear_round">


    <ImageView
        android:layout_width="20dp"
        android:layout_height="20dp"
        android:id="@+id/circle"
        android:layout_margin="5dp"
        android:src="@drawable/wl_circle"
        android:layout_alignParentTop="true"
        android:layout_alignParentStart="true" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:text="Medium Text"
        android:id="@+id/name"
        android:layout_alignParentTop="true"
        android:layout_toEndOf="@+id/circle" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Small Text"
        android:id="@+id/item3"
        android:layout_below="@+id/name"
        android:layout_alignStart="@+id/name" />
</wareablelist.andr.com.webservicewearablelist.WearableListItemRelativeLayout>


我的“WearableListItemRelativeLayout”文件如下:

package wareablelist.andr.com.webservicewearablelist;

import android.content.Context;
import android.support.wearable.view.WearableListView;
import android.util.AttributeSet;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;

/**
 * Created by 245742 on 9/2/2015.
 */
public class WearableListItemRelativeLayout extends RelativeLayout implements WearableListView.OnCenterProximityListener{
    private ImageView mCircle;
    private TextView mName,item3;

    private final float mFadedTextAlpha;
    private final int mFadedCircleColor;
    private final int mChosenCircleColor;
     public WearableListItemRelativeLayout(Context ctx) {
         this(ctx, null);

    }

    public WearableListItemRelativeLayout(Context ctx, AttributeSet attrs) {
        this(ctx, attrs, 0);
    }

    public WearableListItemRelativeLayout(Context context, AttributeSet attrs,
                                          int defStyle) {
        super(context, attrs, defStyle);
        mFadedTextAlpha = getResources()
                .getInteger(R.integer.action_text_faded_alpha) / 100f;
        mFadedCircleColor = getResources().getColor(R.color.grey);
        mChosenCircleColor = getResources().getColor(R.color.blue);
    }

    @Override
    protected void onFinishInflate() {
        super.onFinishInflate();
        // These are defined in the layout file for list items
        // (see next section)
        mCircle = (ImageView) findViewById(R.id.circle);
        mName = (TextView) findViewById(R.id.name);
        item3 = (TextView)findViewById(R.id.item3);
    }

    @Override
    public void onCenterPosition(boolean animate) {
        /*mName.setAlpha(1f);
        ((GradientDrawable) mCircle.getDrawable()).setColor(mChosenCircleColor);*/
        mCircle.animate().scaleX(1f).scaleY(1f).alpha(1);
        mName.animate().scaleX(1f).scaleY(1f).alpha(1);
        item3.animate().scaleX(1f).scaleY(1f).alpha(1);
    }

    @Override
    public void onNonCenterPosition(boolean animate) {
        /*((GradientDrawable) mCircle.getDrawable()).setColor(mFadedCircleColor);
        mName.setAlpha(mFadedTextAlpha);*/

        mCircle.animate().scaleX(0.8f).scaleY(0.8f).alpha(0.6f);
        mName.animate().scaleX(0.8f).scaleY(0.8f).alpha(0.6f);
        item3.animate().scaleX(0.8f).scaleY(0.8f).alpha(0.6f);
    }
}


快乐编码:)