안드로이드 : 나는 다음과 같은 ScreenUI을 달성 할 스크린 샷에 따르면이 '조회수'
사이에 'SplitContainer가'를 만드는 방법 (안드로이드 API> = 10) :
당신은 가지고 GoogleMapsSupportFragement
및 보기의 나머지 높이를 공유 할 ListView
(height
응용 프로그램 시작에서 계산되며, 응용 프로그램은 PortraitMode
에서 실행 해있다) 안드로이드 Notificatio 비슷해야
ListView
컨테이너의 동작을 n 사용자가보기를 놓을 경우 (터치 업) 애니메이션을 시작하고 목록을 스 와이프 할 수 있도록 메뉴.
지금까지, 나는 레드 라인 (LinearLayout
)로 나누어 두 LinearLayout
(Map
및 ListView
)을 구현했습니다. 나는
질문입니다 .. ListView에가/표시된 레드 라인에서 클릭에 숨겨진, 그러나 나는리스트 뷰를 숨길 경우지도가 다시 그려 검은 공간 나뭇잎 때문에, 이상하게 생긴`의 것을, 관리 : 무엇 s best way to implement (LinearLayout? Fragments?)? Do you know examples for the
onTouchBehaviour` (공개 알림 메뉴와 유사)?
//function is triggered at click on the redline-button
private void toggleOverlayList(){
//TEST CASE API >= 11
int mListHeight = ((LinearLayout) findViewById(R.id.map_list)).getLayoutParams().height;
Log.i(DEBUG,"toggleOverlayList() -> currentHeight:" + mListHeight);
if(mListHeight == 0){
((LinearLayout) findViewById(R.id.map_wrapper)).getLayoutParams().height = mDisplayHeight;
((LinearLayout) findViewById(R.id.map_list)).getLayoutParams().height = mDisplayHeight;
((LinearLayout) findViewById(R.id.main_screen)).requestLayout();
}
else{
((LinearLayout) findViewById(R.id.map_wrapper)).getLayoutParams().height = 2* mDisplayHeight;
((LinearLayout) findViewById(R.id.map_list)).getLayoutParams().height = 0;
((LinearLayout) findViewById(R.id.main_screen)).requestLayout();
}
}
Layout.xml 대신 자신이이 구현의 this 라이브러리를 사용할 수 있습니다
<LinearLayout
android:id="@+id/main_screen"
android:animateLayoutChanges="true"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/map_wrapper">
<fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.MapFragment"
/>
</LinearLayout>
<LinearLayout
android:id="@+id/map_seperator"
android:layout_height="20dp" >
</LinearLayout>
<LinearLayout
android:id="@+id/map_list">
<ListView
android:id="@+id/listView1" >
</ListView>
</LinearLayout>
</LinearLayout>
좋은 라이브러리! 하지만 전체 화면을 겹치지 않고 기본보기를 '분할'할 수 있는지 확인해야합니다. – longilong