标签: android-linearlayout

如何在MapView下面添加TextView?

我关注了Hello Views,谷歌地图视图,现在我想TextView在下面添加一个MapView.我只是改变了布局文件main.xml,并放在MapViewTextView垂直LinearLayout.我的Eclipse设置为自动构建它,但是当我在模拟器中运行应用程序时,我只能看到它MapView.

我怎样才能添加TextView下面的MapView

这是我的布局main.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"> 

    <com.google.android.maps.MapView
        android:id="@+id/mapview"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:clickable="true"
        android:apiKey="my key"
    />

    <TextView
        android:id="@+id/textview"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="My TextView"
    />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

layout android android-linearlayout android-mapview

2
推荐指数
2
解决办法
7154
查看次数

LinearLayout没有包装图像

我有一个ImageView,我已经包装在LinearLayout中.LinearLayout有一个背景drawable,它基本上是一个边框,所以效果是我的图像周围有一个边框.

然而,无论我尝试什么,我的图像下面都会有一大块空白空间,这会将我的LinearLayout的下边缘向下推.我希望LinearLayout在没有填充的情况下紧紧包裹图像(除了我指定的1sp)

这就是我如何定义这两者

  <LinearLayout
   a:orientation="vertical" a:layout_width="wrap_content"
   a:layout_height="wrap_content"
   a:gravity="top"
   a:padding="1sp"
   a:background="@drawable/heading_background">  
   <ImageView a:src="@drawable/photo" 
    a:layout_width="wrap_content"
    a:layout_height="wrap_content"
    a:scaleType="fitStart"/>   
  </LinearLayout>
Run Code Online (Sandbox Code Playgroud)

谁能告诉我我做错了什么?

谢谢

android imageview android-linearlayout

2
推荐指数
1
解决办法
2283
查看次数

线性布局在其内部的文本宽度发生变化时不会被平分

我有一个线性布局(水平),里面有3个线性布局,每个布局都有一个文本视图.

现在我想平等地划分这些线性布局.所以我给他们增加了重量1.它很完美.

但是现在当它们内部的文字宽度变化时,它们的重量不再相等:(

比如任何线性布局我删除了文本,或写了一个较小的文本或不同长度的文本然后它失去了相等的分布.如何使布局均匀分布.

还有一件事我想知道文本宽度增加了这些布局的最大分配宽度(这些将动态地给出可能是通过做宽度= 1),然后我如何将文本移动到下一行.

android textview android-linearlayout

2
推荐指数
1
解决办法
2182
查看次数

Android默认选择器

在我的应用程序中,我使用此行夸大了ListView:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:gravity="center"
    android:orientation="horizontal" android:layout_height="wrap_content"
    android:id="@+id/rootrow_layout" android:clickable="true"
    android:focusable="true" android:focusableInTouchMode="true">
    <LinearLayout android:layout_height="fill_parent"
        android:id="@+id/containerHistory" android:layout_width="fill_parent"
        android:layout_weight="1">
        <LinearLayout android:layout_weight="1"
            android:orientation="vertical" android:layout_gravity="center"
            android:layout_height="wrap_content" android:layout_width="wrap_content"
            android:layout_marginLeft="2dip">
            <LinearLayout android:id="@+id/LinearLayout02"
                android:layout_height="wrap_content" android:layout_width="fill_parent">
                <TextView android:textSize="16sp" android:gravity="left"
                    android:padding="5dp" android:layout_width="fill_parent"
                    android:text="Unknown location " android:id="@+id/historyLocation"
                    android:layout_height="wrap_content" android:textColor="#000000"></TextView>
            </LinearLayout>
            <LinearLayout android:id="@+id/LinearLayout03"
                android:layout_height="wrap_content" android:layout_width="fill_parent">
                <TextView android:layout_weight="1" android:textSize="12sp"
                    android:gravity="left" android:padding="5dp" android:layout_width="fill_parent"
                    android:text="Complete" android:typeface="serif" android:id="@+id/historyDate"
                    android:layout_height="wrap_content" android:textColor="#000000"></TextView>
            </LinearLayout>
            <LinearLayout android:id="@+id/LinearLayout04"
                android:layout_height="wrap_content" android:layout_width="wrap_content"></LinearLayout>
        </LinearLayout>
    </LinearLayout>
    <LinearLayout android:orientation="vertical"
        android:layout_marginRight="2dip" android:id="@+id/linearLayout1"
        android:layout_height="match_parent" android:layout_width="wrap_content">
        <CheckBox android:id="@+id/check" android:layout_gravity="center"
            android:layout_height="fill_parent" android:layout_width="wrap_content"></CheckBox>
    </LinearLayout>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

现在我将在我的根布局上添加一个事件(OnClickListener).我可以得到事件,但我看不到默认选择器(例如我有Galaxy S2,点击列表我有蓝色背景).

我可以在LinearLayout点击事件上设置默认选择器吗? …

android selector android-linearlayout

2
推荐指数
1
解决办法
6381
查看次数

Android:布局列表标题

我有一个包含两个图像按钮的列表标题.我希望其中一个图像按钮位于左侧,另一个位于右侧.这就是我的xml文件现在看起来像但它不起作用,它只是将左边的两个图像按钮放在一起.我也试过没有额外的LinearLayouts但没有运气.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="horizontal"
  android:gravity="fill_horizontal"
  android:background="@drawable/list_header_background">
    <LinearLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="wrap_content"
      android:layout_height="fill_parent"
      android:orientation="horizontal"
      android:gravity="left"
      android:background="@drawable/list_header_background">
        <ImageButton
            android:id="@+id/refreshBtn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="4dp"
            android:src="@drawable/ic_refresh"
            android:background="@drawable/list_header_background"
            />
    </LinearLayout>
    <LinearLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="wrap_content"
      android:layout_height="fill_parent"
      android:orientation="horizontal"
      android:gravity="right"
      android:background="@drawable/list_header_background">
        <ImageButton
            android:id="@+id/battleBtn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="4dp"
            android:src="@drawable/ic_battle"
            android:background="@drawable/list_header_background"
            />
    </LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

android android-layout android-linearlayout

2
推荐指数
1
解决办法
351
查看次数

如何在以编程方式添加到LinearLayout的按钮之间添加边距空间?

我在运行时将按钮添加到LinearLayout(垂直方向)......

private void addButtons(String[] titles) {
    for (String title : titles) {
        Button button = ButtonBuilder.getButton(getActivity());
        button.setText(title);
        mButtonsLayout.addView(button);
    }
}
Run Code Online (Sandbox Code Playgroud)

每个按钮都有一个用XML定义的样式.

<!-- styles.xml -->
<style name="Button">
    <item name="android:layout_width">match_parent</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:gravity">center</item>
    <item name="android:layout_margin">8dp</item>
</style>
Run Code Online (Sandbox Code Playgroud)

虽然我定义了layout_margin所有按钮彼此相邻但没有任何间距.如何在它们之间添加边距?


正如nmw所建议的那样,我试图将父布局引入inflater.

private void addButtons(String[] titles) {
    for (String title : titles) {
        Button button = ButtonBuilder.getButton(getActivity(), mButtonsLayout);
        button.setText(title);
        mButtonsLayout.addView(button);
    }
}
Run Code Online (Sandbox Code Playgroud)

..

// ButtonBuilder.java
public static Button getButton(Activity activity, ViewGroup parent) {
    return (Button)activity.getLayoutInflater().inflate(R.layout.custom_button, …
Run Code Online (Sandbox Code Playgroud)

android runtime margin android-layout android-linearlayout

2
推荐指数
1
解决办法
5784
查看次数

Android:以编程方式预先添加LinearLayout

我创建在我的应用程序的布局,其包括以下内容:
main_layout(FrameLayout,填满整个屏幕)
- >包括:main_interface(LinearLayout,高度/宽度填充亲本)

现在我想LinearLayoutmain_layoutBEFORE中添加另一个main_interface.我试过这个:

LinearLayout bar = new LinearLayout(this);
        bar.setGravity(Gravity.TOP);
        LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
        bar.setLayoutParams(params);
        main_layout.addView(bar);
Run Code Online (Sandbox Code Playgroud)

但这只是重叠我的main_interface.

任何帮助?

java android prepend android-linearlayout

2
推荐指数
1
解决办法
1268
查看次数

在android下面修改底部的linearlayout作为页脚

我做了一个简单的布局xml文件.我一直在解决我的问题.我正在使用scrolview,linearlayout和tableview.我有一个顶栏,它被锁在顶部.它永远不会移动.在中间,我有一个scrollview,我需要将我的最后一个linearlayout作为页脚放在底部,如果用户向下滚动,我不希望它消失.我希望它被锁定在那里.

这是我的代码

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

   <TableLayout
   android:layout_width="match_parent"
   android:layout_height="match_parent">

         <TableRow
        android:background="@drawable/gradient"
        android:gravity="center">

            .......

         </TableRow>

   </TableLayout>

    <ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/sw_layout"
android:orientation="vertical">

      <LinearLayout
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:orientation="vertical" >

    <TableLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:background="#EEEEEE" >

        <TableRow
        android:id="@+id/tableRowDate"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

            ..........

            </TableRow>

        </TableLayout>

        /*****************************************/
        /* I want this to be footer at the bottom*/
        /*****************************************/
        <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <Button
            android:id="@+id/btn_date"
            android:layout_height="35dp"
            android:padding="5dp"
            android:drawableLeft="@drawable/calendar"
            android:text="Tarih" />

            <Button
            android:id="@+id/btn_converter"
            android:layout_height="35dp"
            android:padding="5dp"
            android:drawableLeft="@drawable/calendar"
            android:text="Hesap" />
          </LinearLayout>
        /*****************************************/
        /* I want …
Run Code Online (Sandbox Code Playgroud)

java android android-linearlayout android-scrollview

2
推荐指数
2
解决办法
2万
查看次数

将复选框对齐LinearLayout android中的右侧

我正在尝试使用LinearLayout中的复选框创建一些文本视图.我想得到这样的结果:

TextView           Ckeckbox
TextViewwwwww      Ckeckbox
TextV              Ckeckbox
Run Code Online (Sandbox Code Playgroud)

但目前我有这个:

TextView  Checkbox
TextViewwwww  Checkbox
TextView  Checkbox
Run Code Online (Sandbox Code Playgroud)

这是我的xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_alignParentTop="true"
    android:orientation="horizontal">

  <TextView
    android:id="@+id/itemTitle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>
 <CheckBox
        android:id="@+id/checkItem"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

而这个xml给了我相同的结果:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_alignParentTop="true"
    android:orientation="horizontal">

  <TextView
    android:id="@+id/itemTitle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="start"/>
 <CheckBox
        android:id="@+id/checkItem"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="end"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

android android-layout android-linearlayout

2
推荐指数
1
解决办法
5124
查看次数

将按钮置于线性布局中

在LinearLayout上使用重力使按钮正确居中:

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:gravity="center">

        <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/new"
        android:paddingLeft="40dp"
        android:paddingRight="40dp"/>
    </LinearLayout>
Run Code Online (Sandbox Code Playgroud)

但是在Button上使用layout_gravity = center只能使按钮水平而不是垂直居中,为什么?

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical">

            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="TEST"
            android:paddingLeft="40dp"
            android:paddingRight="40dp"
            android:layout_gravity="center"/>
        </LinearLayout>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

android android-linearlayout

2
推荐指数
1
解决办法
3849
查看次数