2014-03-27 4 views
4

확장 가능한 목록 SetIndicatorBounds가 내 프로젝트 코드에서 작동하지 않습니다.Android - 확장 가능한 목록보기 SetIndicatorBounds가 Kitkat에서 작동하지 않습니다. android-4.4

lv1 = (ExpandableListView) findViewById(R.id.custom_list); 

DisplayMetrics metrics = new DisplayMetrics(); 

getWindowManager().getDefaultDisplay().getMetrics(metrics); 

int width = metrics.widthPixels; 

lv1.setIndicatorBounds(width - GetPixelFromDips(50), width - GetPixelFromDips(10)); 


public int GetPixelFromDips(float pixels) { 

    // Get the screen's density scale 

    final float scale = getResources().getDisplayMetrics().density; 

    // Convert the dps to pixels, based on density scale 

    return (int) (pixels * scale + 0.5f); 

} 

마이 모토 G 킷캣 장치 폭이 720 :

<LinearLayout 
android:orientation="vertical" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:gravity="center|center_vertical" 
android:weightSum="1.0" 
>    
<ExpandableListView 
    android:id="@+id/custom_list" 
    android:layout_width="match_parent" 
    android:layout_height="0dp" 
    android:dividerHeight="1dp" 
    android:layout_weight="1" 
    android:paddingBottom="0dp" 
    android:divider="#b5b5b5" 
    /> 
    </LinearLayout> 

여기 내 코드입니다 :

여기 내 레이아웃입니다. 하지만 KitKat 장치에서 setIndicatorBounds가 작동하지 않는 것 같습니다.

도움이 될 것입니다.

감사합니다,

답변

9

이 시도 : 답장을

if(android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.JELLY_BEAN_MR2) { 
    mListView.setIndicatorBounds(myLeft, myRight); 
} else { 
    mListView.setIndicatorBoundsRelative(myLeft, myRight); 
} 

reference

+0

감사합니다! 그러나 setIndicatorBoundsRelative는 유형 ExpandableListView에 대해 정의되지 않았습니다. –

+0

최신 하나 (또는 ​​4.3) 버전 –

+0

이 내 매니페스트 파일 SDK 버전입니다에 targetSdkVersion을 변경해야합니다 : < 안드로이드 SDK 사용의 minSdkVersion = "10" 안드로이드 : targetSdkVersion을 = "18"/> –

관련 문제