2011-01-06 2 views
3

Немного новичков, когда дело доходит до android, только работало над ним должным образом в течение нескольких дней, но даже после всех поисков, которые я сделал, я был в тупике, и никто, кажется, не знает, как мне помочь. У меня это до сих пор:LinearLayout - Как получить текст справа от значка?

http://img263.imageshack.us/i/sellscreen.jpg

Как я могу переместить текст, чтобы быть к тому же каждый значок, а не под ним? Надеяться, что галерея не будет перемещена. Вот код, у меня есть: не кажется

<?xml version="1.0" encoding="utf-8"?> 

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/scroller" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:fillViewport="true" > 

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

    <Gallery xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/gallery" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"/> 

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

    <TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="The offcial UK driving theory test application. Over 190 questions." 
    /> 

    <ImageView 
    android:id="@+id/test_image" 
    android:src="@drawable/icon" 

    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"/> 

    <TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="The offcial UK driving theory test application. Over 190 questions."/> 

    <ImageView 
    android:id="@+id/test_image" 
    android:src="@drawable/icon" 

    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"/> 

    <TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="The offcial UK driving theory test application. Over 190 questions."/> 

    <ImageView 
    android:id="@+id/test_image" 
    android:src="@drawable/icon" 

    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"/> 

    <TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="The offcial UK driving theory test application. Over 190 questions."/> 

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

    <TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="The offcial UK driving theory test application. Over 190 questions." 
     /> 

    </LinearLayout> 

</ScrollView> 

Верхняя половина моего кода, который будет показывать по какой-то причине, но это просто открытие линейной компоновки. Я буду навсегда благодарен всем, кто может помочь, я долго терзал мозги и никуда не уходил. На самом деле это усиливается. Заранее спасибо!!

ответ

3

Вам нужно обернуть каждую пару ImageView/TextView в LinearLayout

<LinearLayout 
android:orientation="horizontal" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content"> 
    <ImageView 
    android:id="@+id/test_image" 
    android:src="@drawable/icon" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"/> 

    <TextView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="The offcial UK driving theory test application. Over 190 questions." 
    /> 
</LinearLayout> 

Это также довольно ясно, что вы не спросите любого, кто знал андроид, потому что это довольно тривиально.

+0

Я думаю, что люди просто ленивы, так как я разместил его на двух форумах Android. О, хорошо так много для того, чтобы ломать мне мозги, когда он был исправлен через секунду, Большое спасибо! –

+1

@ RED_: Обязательно. Но также рассмотрите ответ @ Mayra. Я не уверен, что использование относительной компоновки в ЭТОМ КОНКРЕТНОМ СЛУЧАЕ будет более эффективным, но обычно лучше использовать относительные макеты, чем глубоко вложенные линейные макеты. – Falmarri

+0

Да, имеет смысл, RelativeLayouts сбивает меня с ума на данный момент. Как получить все в нужном месте - это главное, но я уверен, что я заберу его, тем больше у меня на нем. –

1

Вы читали учебники по макету android? Множество вещей на сайте dev, например declaring layout, common layout objects и hello views учебники.

Существует ряд способов достижения этого, в зависимости от ваших целей.

Это список предметов неизвестного размера, которые могут прокручиваться? Используйте ListView. Вы можете предоставить пользовательский макет для ListView с вашими бок о бок.

У вас есть конечный набор вещей? Используйте RelativeLayout. Скажите каждому TextView макету ниже одного выше, и каждый ImageView к макету справа от него TextView.

Вы также можете сделать это с вложенными LinearLayouts, одной вертикалью и связкой горизонтальной, но это менее эффективно, чем с помощью RelativeLayout.

+0

', но это менее эффективно, чем использование RelativeLayout' Вы уверены в этом? Я не согласен, но гнездо из трех макетов не кажется таким уж дорогим. – Falmarri

+1

Когда вы имеете дело с устройствами с ограниченной мощностью и выключением аккумулятора, почему вы хотите делать что-то медленным, когда вы можете так же легко сделать его более эффективным? Одно дело, если было сложной и сложной задачей сохранить несколько циклов, но использование относительной компоновки не является чем-то трудным. –

+0

Его определенно менее эффективно, но если я не знаю, на сколько. У Commonsware была большая публикация на нем, которую я не могу найти сейчас, но на этом посту показана основная идея, почему: http://developer.android.com/resources/articles/layout-tricks-efficiency.html –

Смежные вопросы