2011-07-19 19 views
8

私は次の問題があります。私はギャラリーでフォームを作ったのですが、画像を含む代わりにギャラリーにはクラスからのアイテムが含まれていました。ギャラリーの先頭と末尾に

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent"> 
     <Gallery android:id="@+id/galleryid" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:spacing="0dip" 
       android:padding="0dip" 
       android:layout_weight="1" /> 

をギャラリーのアイテム:私は使用して画像間のスペースを削除

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout android:id="@+id/LinearLayout01" 
    android:layout_width="75dip" xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_height="wrap_content" android:orientation="vertical" android:gravity="center_horizontal" android:background="#ffffff"> 

    <TextView android:id="@+id/frame_number" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="-" android:textSize="12dip" android:textColor="#ffffff" android:background="#000000" android:gravity="center" /> 
    <LinearLayout android:id="@+id/LinearLayout01" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" android:orientation="horizontal" android:gravity="center_horizontal"> 
       <TextView android:id="@+id/frame_shot1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="-" android:textSize="18dip" android:textColor="#000000" /> 
       <TextView android:id="@+id/frame_shot2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="-" android:textSize="18dip" android:textColor="#000000" /> 
    </LinearLayout> 
    <TextView android:id="@+id/frame_total" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="---" android:textSize="38dip" android:textColor="#000000"/> 
</LinearLayout> 

buuuuuuuuuuuuuuuuut、私は問題を抱えて、いくつかの空白は、始まりと終わりの時がありますアイテムのないギャラリー。実際には、私のギャラリーには、実際には水平方向にスクロールすることができるアイテムがたくさんありますが、ギャラリーの左端の最初のものが最初のアイテムで、最後はuスクロール右の項目は正しい項目です。


編集それでも08/16バックプロジェクトで同じ問題で、ここで私は(私はそれを取り除くためにしようとしているものを正確に何であるの画像が先頭に黒いスペースである去るもあります他の側のギャラリーの終わり)

enter image description here

+0

解決策をお探しですか? –

+0

こんにちはミーナとエールkあなたはこの問題の解決策を見つけましたか? – SRam

+0

こんにちはSRam、Mina、Ale Kは上記の問題の解決策をお探しですか? – indrajeet

答えて

0

であなたはおそらく、フェージングエッジ長の話します。

http://developer.android.com/reference/android/view/View.html#setFadingEdgeLength(int

代わりにラップコンテンツのだけでなく、親を埋めるために、ギャラリー幅のためにあなたのレイアウトを変更してみてください

setFadingEdgeLength(0); 

それとも

setHorizontalFadingEdgeEnabled(false); 

をお試しください:

<Gallery android:id="@+id/galleryid" 
      android:layout_width="fill_parent" 
+0

クリスマスに遅れて申し訳ありませんが、それは私が話しているとは思えないスペースではありません。スクリーンの幅全体をアイテムで満たしているギャラリーがあります...しかし、とにかく空白があります。最後と最初のアイテムの左と右にトラフをスクロールすることができます。私はそれを取り除きたいと思います。始めの前と終わりの前のスペースのように...私はそれを望みます。 ありがとうございます。 –

+0

xmlをすべてあなたのビューに投稿できますか?たぶん両親の設定がそれに影響を与えているのでしょうか? –

+0

申し訳ありませんが、遅延のために、ギャラリーアクティビティと私のカスタムアイテムの画像とコード全体が –

-2

私はこの問題を2時間かけて過ごし、最終的に自分自身の解決策を見つけました。私はカスタムLinearLayout要素を持つギャラリーを持っています。私は開始時にも終了時にもパディングなしでただ1つの要素だけを表示したい。私の問題が解決されています。私は、大きな数(のminWidthは=「1000dp」アンドロイド)へのすべての項目ののminWidthパラメータを設定した場合、ことがわかった多くの試行の後

。あなたの問題に適しているかどうかわからない。あなたが試すことができますグッドラック

ピーターB.

+0

Nop、それは私のためには機能しませんでした。 –

1

ことの一つは、複数の項目がありますかどうかを確認することです。存在する場合は、ギャラリーの選択を2番目の項目に設定します。

2

左に空白が表示される理由は、最初のアイテムの左側に表示するアイテムがもうない(ビューの中央に配置されている)ためです。私は同じ問題が最後の項目の権利にも発生すると仮定します。適切にこれを解決するために

は項目がない場合に表示する内容を決定する必要がありますが、私はいくつかのアイデアを与えるだろう。

(1)と同じ幅にギャラリーアイテムの幅を増やしますギャラリーは一度に1つのアイテムしか表示しないため、ユーザーは空のスペースにスクロールすることはできません。

(2)空白の色や画像を表示するには、ギャラリーのandroid:background属性を設定すると仮定します。

(3)アダプターの先頭と最後にそれぞれ最後/最初の項目からなるバッファーを作成し、ユーザーがバッファー内で十分にスクロールすると、その反対側の項目にジャンプします。無限の "カルーセル"ギャラリーのためのギャラリー。

+0

私はHorizo​​ntalScrollViewを使用しているだけで、項目を動的に追加して側面にスペースを持たないようにしています。 –

+0

選択したギャラリーアイテムが重要でない場合は、ギャラリー拡張のflingメソッドとtouchメソッドをオーバーライドして、終了アイテムへのスクロールを防止できます。 – Jave

+0

私が働くことができる解決策に少しでも微調整して考えることができます。まだ理想的ではありませんが、何よりも優れています。 –

2

試してみてください。

int position=1; 

void android.widget.AbsSpinner.setSelection(int position) 
0

-(metrics.widthPixels)+itemWidthにギャラリーのマージンを設定し、空白スペースは非表示です。

LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT); 
params.setMargins(-(metrics.widthPixels)+itemWidth,0,0,0); 
gallery.setLayoutParams(params); 
関連する問題