4.1.2 で ExpandableListView のレイアウトが崩れる

 前回に引き続き ExpandableListView に悩まされました。FMS Player の公開を目指して機能強化とテストを進めているのですが、Android 4.1.2 (API Level16)でレイアウトが崩れていることに気づきました。

表示文字列が左に寄ってしまっています。本来はこうです。

4.2.2、4.3.1 を確認してみましたけど大丈夫でした。

安易な解決策ですが、4.1.2 の時は paddingLeft を明示的に指定したレイアウトファイルに切り替えて調整するようにしました。

	int groupLayout = R.layout.music_list_album_item;
	int childLayout = R.layout.music_list_track_item;
	
	if (Build.VERSION.SDK_INT == Build.VERSION_CODES.JELLY_BEAN) {
		groupLayout = R.layout.music_list_album_item412;
		childLayout = R.layout.music_list_track_item412;
	}
	
	MusicListAdapter adapter = new MusicListAdapter(
			this,
			categoryCursor,
			// android.R.layout.simple_expandable_list_item_1,
			groupLayout,
			new String[] {Music.ALBUM},
			// new int[] {android.R.id.text1},
			new int[] {R.id.groupText1},
			// android.R.layout.simple_expandable_list_item_2,
			childLayout,
			new String[] {Music.NAME, Music.ARTIST},
			// new int[] {android.R.id.text1, android.R.id.text2}
			new int[] {R.id.childText1, R.id.childText2}
			);
	
	musicList.setAdapter(adapter);

安易すぎますかねぇ。

タイトルとURLをコピーしました