2012-03-22 5 views
0

내가 보내주는 모든 TextView에 특별한 형식을 지정해야하므로 ListView에 내 맞춤 어댑터를 사용하고 있습니다. 문제android 모든 자식의 ListView 크기

enter image description here

내가 이러한보기 사이의 간격이 감소 할 이미지와 같이 I 각 텍스트 뷰의 TEXTSIZE 설정 방법 작은 아무리가 이들이리스트에 동일한 양의 공간에 의해 분리되어 있다는 것이다 . 이것은 내 getView() 메소드입니다.

@Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     TextView textView = (TextView) super.getView(position, convertView, parent); 

     textView.setGravity(Gravity.CENTER); 
     textView.setText(getItem(position).getName()); 
     textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 15); 
     textView.setTextColor(getItem(position).getClr()); 
     return textView; 
    } 

EDIT1 : 내가 실제로 원하는 것은 "블루"와 "녹색"가까이 함께해야한다는 것입니다. 나는 그들 사이의 간격을 줄이고 싶다.

EDIT2 : XML :

textView.setGravity(Gravity.CENTER); 

당신이 자세히 설명해 수 실제로 필요한 D 그런데 :

<ListView 
      android:id="@+id/answerlist" 
      android:layout_width="240dp" 
      android:layout_height="wrap_content" 
      android:layout_centerHorizontal="true" 
      android:layout_below="@+id/question" > 

     </ListView> 
+0

텍스트 크기는 위에 게시 한 이미지에서 모두 동일하게 보입니다. 또한 XML 파일을 게시하는 것이 도움이 될 것입니다. – prolink007

+0

패딩을 바꿔보십시오 –

+0

전체 XML 파일이 상당히 커서 listView 부분에 넣었습니다. @prolink007 편집 참조 – wirate

답변

0

PARAMS 위의 정의 레이아웃에 부합 될 것 ListView 행에 대한 뷰. 이 레이아웃은 텍스트 모양 "? android : attr/textAppearanceLarge"를 사용합니다. 어떤 종류의 패딩/마진이 설정되어 있는지 알지 못하지만 어댑터에서 무엇을해도 간격은 줄어들지 않습니다.

그래서 내가 한 것은 res/layout에서 "row.xml"이라는 사용자 정의 XML 레이아웃을 만들고 거기에 간단한 TextView를 넣는 것입니다. 이 레이아웃을 사용하여 ListView에서 행을 부 풀리면 공간이 없어졌습니다. 다음은 생성자의 코드입니다.

public ColoredAdapter(Context context, ArrayList<ColorElement> values) { 
     super(context, R.layout.row, values); 
     this.context = context; 
     this.values = values; 
    } 
1

이 문제는 다음 줄의입니까?

+0

edit1을 참조하십시오 – wirate

0

jyotiprakash에 언급 된대로 당신이하려는 일에 대해 더 자세한 설명이 필요할 수 있습니다.

그러나 내가 볼 수있는 것에서는 여백을 설정하려고합니다. 그렇다면 나는 다음과 같은 방식으로 그것에 대해 갈 것이다.

..... 
    View someView = ((LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.yourViewLayout, null, false); 

    final LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT); 

    layoutParams.setMargins(4, 15, 4, 0); 

    //Now you can use your view to set the layout params 
    someView.setLayoutParams(layoutParams); 

는 이제 뷰에 대한 마진은 음 ... 문제는 내가 생성하는 기본 레이아웃 android.R.layout.simple_list_item_1를 사용하던 것을

+0

글쎄 .. 내가 어떻게 더 설명 할 수 있는지 모르겠다. 하지만, 시도해보십시오 ... 제가 게시 한 이미지에서 볼 수 있듯이, 첫 번째 텍스트는 "파란색"이고, 다음에는 많은 공간이 있습니다. 그런 다음 칸막이가 있고 또 다른 많은 공간 뒤에는 "녹색 ". 모든 TextView와 구분선 사이에있는이 공간을 줄이려고합니다. – wirate