0

我有一个自定义标题栏。这是样式部分。

<style name="CustomWindowTitleBackground">
    <item name="android:background">#323331</item>
</style>

<style name="CustomTheme" parent="android:Theme">
    <item name="android:windowTitleSize">35dip</item>
    <item name="android:padding">0px</item>
    <item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>
    <item name="android:windowBackground">@drawable/gradient</item>
</style>

这是 XML

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#323331"
android:orientation="horizontal" >

<ImageView
    android:id="@+id/header"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="left"
    android:layout_weight="1"
    android:src="@drawable/satellite" />

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:gravity="right">

    <TextView
        android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="12sp"/>

    <ImageView
        android:id="@+id/icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/satellite" />

</LinearLayout>


</LinearLayout>

这是该 XML 的类

public class CustomTitle extends Activity {
protected TextView title;
protected ImageView icon;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
    setContentView(R.layout.customtitle);

    title = (TextView) findViewById(R.id.title);
    icon  = (ImageView) findViewById(R.id.icon);

    getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.customtitle);

}

这是它的外观:

http://imgur.com/0y5SANf

我的问题是这两个imageviews(卫星)应该左右对齐。我似乎无法做到这一点。

有谁知道他们为什么不对齐?

它在 中的图形布局中正确显示Eclipse,但是当我在模拟器和我的物理设备上运行它时,它会像图片一样显示。我应该提到我的活动扩展了 CustomTitle。

4

1 回答 1

0

从图像视图和线性布局中删除 layout_weight。也使用重力而不是 layout_gravity。我认为(我目前没有打开我的电脑)这应该可以解决您的问题。您可以使用的另一条路线是使用相对布局作为根布局而不是您的第一个线性布局,并在您的图像视图和第二个线性布局上使用 alignParentLeft 和 alignParentRight。

于 2013-09-29T00:19:54.767 回答