2017-09-10 19 views
0

私のListViewは、TextViewsという3つのT1、T2、T3で構成されています。 [ボタンの間のスペース] B2
T1
T2
T3
TextViewとボタン付きリストビュー

T1など

B1れています。また、私は彼らがこのように表示させたい2つのボタンB1とB2

を持っていますB1の下だけではなく、ボタンの下の画面に表示されます。

以下は、私がSOの質問に多くの回答ごとに変更しようとした私のXMLです。

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

     <Button 
      android:id="@+id/button" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.5" 
      android:text="Left Button" 
      /> 
     <Button 
      android:id="@+id/button2" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.5" 
      android:text="Right Button" 
      /> 
    </LinearLayout> 
    <TextView 
     android:id="@+id/engText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginStart="10sp" 
     android:textSize="15sp" 
     android:typeface="serif"/> 

    <TextView 
     android:id="@+id/arabText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginStart="10sp" 
     android:textSize="15sp" 
     android:typeface="sans" 
     /> 
    <TextView 
     android:id="@+id/refText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginStart="10sp" 
     android:textSize="15sp" /> 

    <ListView 
     android:id="@+id/hadithView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" > 
    </ListView> 
</RelativeLayout> 

誰でも助けてください。 あなたが

EDIT私はビューを移入するCursorAdapterを使用しています ありがとうございました。 B1とB2はTextViewsで繰り返されます。私はトップ(固定)にB1とB2を維持し、(自分のボタンなし)テキストビューをスクロールすることができ

EDIT 2 私はボタンの問題を修正したいと思います。私はトップに固定された2つのボタンも必要ですが。私はそれらを削除し、今では後で必要とするテキストビューが付いた2つのボタンがあります。

今、テキストが互いに強制されています。ここで

私の新しいxmlです:

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

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 

     <Button 
      android:id="@+id/button" 
      android:layout_width="0sp" 
      android:layout_weight="0.5" 
      android:layout_height="wrap_content" 
      android:text="Left Button" /> 

     <Button 
      android:id="@+id/button2" 
      android:layout_width="0sp" 
      android:layout_weight="0.5" 
      android:layout_height="wrap_content" 
      android:text="Right Button" /> 
    </LinearLayout> 
    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical"> 
     <TextView 
      android:id="@+id/engText" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginStart="10sp" 
      android:textSize="15sp" 
      android:typeface="serif"/> 

     <TextView 
      android:id="@+id/arabText" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginStart="10sp" 
      android:textSize="15sp" 
      android:typeface="sans" 
      /> 
     <TextView 
      android:id="@+id/refText" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginStart="10sp" 
      android:textSize="15sp" /> 
    </RelativeLayout> 
</LinearLayout> 

答えて

0

あなたはそれがRelativeLayoutを使用して、互いに対して異なるRelativeLayoutに異なるセクションを維持し、layout_below

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" > 
<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    //give some id 
    android:id="@+id/one"> 

    <Button 
     android:id="@+id/button" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.5" 
     android:text="Left Button" 
     /> 
    <Button 
     android:id="@+id/button2" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.5" 
     android:text="Right Button" 
     /> 
</LinearLayout> 
<RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
android:layout_below="@+id/one"> 
<TextView 
    android:id="@+id/engText" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginStart="10sp" 
    android:textSize="15sp" 
    android:typeface="serif"/> 

<TextView 
    android:id="@+id/arabText" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginStart="10sp" 
    android:textSize="15sp" 
    android:typeface="sans" 
    /> 
<TextView 
    android:id="@+id/refText" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginStart="10sp" 
    android:textSize="15sp" /> 

<ListView 
    android:id="@+id/hadithView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" > 
</ListView> 

0

その属性を使用することができますRelativLayoutではなくLinearLayoutを使用するように見えます。 あなたの商品の注文はちょうど線形垂直になっているので。 は、ここでは、コードです:お互いに次の二つのボタンを設定しますこれを行う

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

     <Button 
      android:id="@+id/button" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.5" 
      android:text="Left Button" 
      /> 
     <Button 
      android:id="@+id/button2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.5" 
      android:text="Right Button" 
      /> 
    </LinearLayout> 
    <TextView 
     android:id="@+id/engText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginStart="10sp" 
     android:textSize="15sp" 
     android:text="T1" 
     android:typeface="serif"/> 

    <TextView 
     android:id="@+id/arabText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginStart="10sp" 
     android:textSize="15sp" 
     android:text="T2" 
     android:typeface="sans" 
     /> 
    <TextView 
     android:id="@+id/refText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginStart="10sp" 
     android:text="T3" 
     android:textSize="15sp" /> 

    <ListView 
     android:id="@+id/hadithView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" > 
    </ListView> 
</LinearLayout> 
+0

ありがとうございます。 これは部分的に動作します。ボタンはテキストビューで繰り返され、2つは一番上に固定されます(固定)。今はトップの2つのボタンしか持っていません。 EDIT to OP –

+0

を参照してください。ツールバーを使用して常に上に固定されているようなことを考えるべきでしょうか?そうでなければ、ScollViewがあなたを助けることができるかもしれません。 – deadpoint

+0

:)私は 'WebView'から来ています。私のアプリケーションはほとんど準備が整っていたが、WebViewは欠陥(大きなHTMLデータを読み込むには時間がかかりすぎる)であることを示した。だから私は 'Listview'に来て、もっと早くなることを望んでいました。それは私の最初のアプリです。 このビューの仕組みを見てみましょう。 ありがとうございます。) –

0
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/one" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" 
    android:weightSum="1"> 

    <Button 
     android:id="@+id/button" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.5" 
     android:text="Left Button" /> 

    <Button 
     android:id="@+id/button2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.5" 
     android:text="Right Button" /> 
</LinearLayout> 

、その後、あなたは、このすべてのLinearLayout下の要素の下に配置することができます。

変更が行わ:

  • のLinearLayoutの向きが(彼らはまだ彼らの場所ための0.5重量を保持するwrap_contentに設定両方のボタンの1つの
  • layout_widthのweigthSumを
  • 横のLinearLayoutに変更を保持します - 彼らはどちらもビューを分割します。

Button layout

あなたはボタンの間のより多くのスペースが必要な場合は、次のように左のボタンをSOMマージンを置きます。

android:layout_marginRight="32dp" 
android:layout_marginEnd="32dp" 
1

これは非常に速い修正ですが、それはあなたが望むものを与えます。基本的には:あなたのリストビューは画面全体を引き継いでいます - あなたの質問に応じてそれを必要としていないようです。あなたの "スペース"として空のTextViewの上にListViewを使用することができますが、次にRelativeLayout(あなたのメインレイアウト)に配置する必要がある属性の下にTextViewsを与えなければなりません。 LinearLayout(最初のTextViewの場合)と、上記のTextViewを下にすべての属性について、すぐに属性を追加しました。あなたはそれを別のやり方で行うことができます - そして、一般的には、アンドロイドでxmlファイルのドキュメンテーションを探したり、ちょっと遊んだりしてください。それはまったく論理的ですが、私が始めたときも苦労しました。ここに私のコードは次のとおりです。

<?xml version="1.0" encoding="utf-8"?> 
 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
 
    android:layout_width="match_parent" 
 
    android:layout_height="match_parent" 
 
    android:orientation="vertical" > 
 
    <LinearLayout 
 
     android:id="@+id/linLay" 
 
     android:layout_width="match_parent" 
 
     android:layout_height="wrap_content" 
 
     android:orientation="horizontal"> 
 

 
     <Button 
 
      android:id="@+id/button" 
 
      android:layout_width="100dp" 
 
      android:layout_height="wrap_content" 
 
      android:layout_weight="0.4" 
 
      android:text="Left Button" 
 
      /> 
 
     <TextView 
 
      android:layout_width="10dp" 
 
      android:layout_height="wrap_content" 
 
      android:layout_weight="0.1"/> 
 
     <Button 
 
      android:id="@+id/button2" 
 
      android:layout_width="100dp" 
 
      android:layout_height="wrap_content" 
 
      android:layout_weight="0.4" 
 
      android:text="Right Button" 
 
      /> 
 
    </LinearLayout> 
 
    <TextView 
 
     android:id="@+id/engText" 
 
     android:layout_width="wrap_content" 
 
     android:layout_height="wrap_content" 
 
     android:layout_marginStart="10sp" 
 
     android:layout_below="@+id/linLay" 
 
     android:layout_marginTop="10dp" 
 
     android:textSize="15sp" 
 
     android:text="My dummy text" 
 
     android:typeface="serif"/> 
 

 
    <TextView 
 
     android:id="@+id/arabText" 
 
     android:layout_width="wrap_content" 
 
     android:layout_height="wrap_content" 
 
     android:layout_marginStart="10sp" 
 
     android:layout_below="@+id/engText" 
 
     android:layout_marginTop="10dp" 
 
     android:textSize="15sp" 
 
     android:text="My dummy text" 
 
     android:typeface="sans" 
 
     /> 
 
    <TextView 
 
     android:id="@+id/refText" 
 
     android:layout_width="wrap_content" 
 
     android:layout_height="wrap_content" 
 
     android:layout_marginStart="10sp" 
 
     android:layout_below="@+id/arabText" 
 
     android:layout_marginTop="10dp" 
 
     android:textSize="15sp" 
 
     android:text="My dummy text"/> 
 
</RelativeLayout>

+0

ありがとうございます。 OPに私の編集を見ていただけますか? –

0

は、問題を修正しました。 これは私がCursorAdapter

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

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 

     <Button 
      android:id="@+id/button" 
      android:layout_width="0sp" 
      android:layout_weight="0.5" 
      android:layout_height="wrap_content" 
      android:text="Left Button" /> 

     <Button 
      android:id="@+id/button2" 
      android:layout_width="0sp" 
      android:layout_weight="0.5" 
      android:layout_height="wrap_content" 
      android:text="Right Button" /> 
    </LinearLayout> 
    <TextView 
     android:id="@+id/engText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginStart="10sp" 
     android:textSize="15sp" 
     android:typeface="serif"/> 

    <TextView 
     android:id="@+id/arabText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginStart="10sp" 
     android:textSize="15sp" 
     android:typeface="sans" 
     /> 
    <TextView 
     android:id="@+id/refText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginStart="10sp" 
     android:textSize="15sp" /> 
</LinearLayout> 

で使用私のXMLがあり、これは私のActivity xmlです:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 
    <ListView 
     android:id="@+id/hadView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 
    </ListView> 
</LinearLayout> 

は答えたみんな、ありがとうございました。

関連する問題