【发布时间】:2011-08-01 18:54:50
【问题描述】:
我正在做一个增强现实应用程序,其中主屏幕包含多个显示在相机预览上的 ARViews。这些 ARView 是扩展的 LinearLayout,内部带有 TextView。 这些视图绘制在屏幕上不同的垂直位置。现在我想从每个视图的中间到屏幕高度的中间画一条垂直线,如下面的截图所示。
当然,当用户移动设备时视图会移动,因此线的长度会发生变化。
如何将其添加到我的 ARView?
public class ARView extends LinearLayout
{
public float azimuth = 0;
public float inclination = 0;
public Location location;
public int position;
TextView title, type, distance;
public int X, Y;
public ARView(final Context context, int ind)
{
super(context);
getLayoutInflater().inflate(R.layout.ar_item, this ,true);
LayoutInflater inflater = (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
inflater.inflate(R.layout.ar_item, null);
title = (TextView) findViewById(R.id.title);
type = (TextView) findViewById(R.id.type);
distance = (TextView) findViewById(R.id.distance);
}
}
ar_item.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ar_item" android:layout_width="202dp"
android:layout_height="62dp" android:background="@drawable/bg_item_ar"
android:clickable="true">
<LinearLayout android:id="@+id/container"
android:orientation="vertical" android:layout_width="164dp"
android:layout_height="fill_parent" android:paddingBottom="5dp"
android:paddingLeft="8dp" android:paddingTop="5dp"
android:paddingRight="6dp" android:clickable="true">
<TextView android:id="@+id/title" android:layout_width="fill_parent"
android:layout_height="18dp" android:textSize="13sp"
android:textColor="#FFFFFF" android:textStyle="bold"/>
<TextView android:id="@+id/type" android:layout_width="fill_parent"
android:layout_height="18dp" android:textSize="13sp"
android:textColor="#FFFFFF"/>
<TextView android:id="@+id/distance"
android:layout_width="fill_parent" android:layout_height="16dp"
android:textSize="12sp" android:textColor="#C6C6C6" />
</LinearLayout>
</LinearLayout>
【问题讨论】:
标签: android android-linearlayout shape