2011-12-03 14 views
0

カスタムアダプターを使用しているListViewがあります。広告に合わせるためにリストの最後の項目にパディングを追加したいので、下にスクロールしたときに広告が最後の項目をカバーしないようにします。それよりもListViewの下部にパディングを追加します。

<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
style="@style/BaseStyle" 
android:orientation="vertical" 
android:paddingLeft="5dip" 
android:paddingRight="5dip" 
android:paddingTop="8dip" 
android:paddingBottom="8dip" 
    > 

<TextView 
    android:id="@+id/text" 
    style="@style/BaseStyle.Title" 
/> 

</RelativeLayout> 

その他私はListViewコントロールを移入された私のカスタムアダプタのコードを持っている:私が持っている唯一のレイアウトは、リストビューの各列のレイアウトです。質問に役立つ他のコードを含める必要があるかどうかはわかりません。 - リストビューとビューニーズに

public class Main extends ListActivity { 
private CustomAdapter adapter; 
private String[] items = {}; 

@Override  
public void onCreate(Bundle icicle) { 
     super.onCreate(icicle); 

     adapter = new CustomAdapter(); 

     items = PopulateItems(); 

     for (String item : items) 
      adapter.addItem(item); 

     this.setListAdapter(adapter); 
     adapter.notifyDataSetChanged(); 
} 

private class CustomAdapter extends BaseAdapter { 
private String[] mData; 
private LayoutInflater mInflater; 

public CustomAdapter() { 
     mInflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
} 

public void addItem(String item) { 
     mData.add(item); 
} 

@Override 
public int getCount() { 
     return mData.size(); 
} 

@Override 
public Object getItem(int position) { 
     return mData.get(position); 
} 

@Override 
public long getItemId(int position) { 
     return position; 
} 

@Override 
public View getView(int position, View convertView, ViewGroup parent) 
{ 
     ViewHolder holder; 
     String item = (String)this.getItem(position); 

     if (convertView == null) 
     {   
      holder = new ViewHolder(); 

      convertView = mInflater.inflate(R.layout.main, parent, false); 
      holder.text = (TextView)convertView.findViewById(R.id.text); 
      convertView.setTag(holder); 
     } else { 
      holder = (ViewHolder)convertView.getTag(); 
     } 
     TextView tvText = holder.text; 
     tvText.setText(item); 
} 

static class ViewHolder { 
     TextView text; 
} 
+0

あなたは 'ListView'が含まれているレイアウトファイルを置くことはできますか? – havexz

+0

私はOPに私の質問を明確にするのに役立つかもしれない追加のコードを追加しました。 –

+0

いいえあなたのListViewを含むxmlレイアウトファイルを探しています – havexz

答えて

1

あなたが別のレイアウト二つのビューでファイルを持っている必要があります:私は私のListViewコントロールを移入していますか

編集、私はメインのレイアウトを持っていない、これは広告のために。 listviewにはid "@android:id/list"を必ず使用してください。

1

私は、あなたが探していることは「clipToPadding」属性またはsetClipToPadding()メソッドであると思う:

<ListView 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:clipToPadding="false" 
android:paddingBottom="@dimen/your_bottom_padding"/> 
関連する問題