Android UI 세부 지식 포인트 1 (edittext, listview, 채 우기 화면 등)

이번 주 에 회사 앱 이 발 표 될 것 입 니 다. UI 의 요구 에 따라 화면 을 다시 UI 상호작용 으로 조정 합 니 다.작은 지식의 세부 사항 을 총 결 하 였 다.
1. 컨트롤 초점 가 져 오기
mText.setText("gfgss");
mText.setFocusable(true);

xml 안에 입력 상자 설정 기본 초점 가 져 오기 < requestFocus / >
        <AutoCompleteTextView
            android:layout_width="0dp"
            android:layout_height="match_parent">
            <requestFocus />
        </AutoCompleteTextView>

2. 어떻게 커서 를 EditText 의 텍스트 끝 에 놓 습 니까?
mText.setSelection(mText.getText().length());

3. activity 설정 입력 법의 문제, 만약 에 떠 있 는 레이아웃 이 입력 상 자 를 가 릴 때 adjustPan 을 사용 합 니 다.
시작 할 때 activity 는 입력 법 stateHidden 을 팝 업 하지 않 고 activity 에 설정 합 니 다.
android:windowSoftInputMode="stateHidden|adjustPan"

4. layot 의 분할 선 설정 또는 listview 의 분할 선
android:divider="@drawable/shape_divider"
android:showDividers="beginning|middle|end" 

5. listview 스크롤 디 스 플레이 제거
android:scrollbars="none"

6. listview 의 분할 선 제거
android:divider="@null"

7. 기본 클릭 으로 선택 한 색상 (1) 을 제거 하고 목록 layot 의 backgroudcolor 속성 을 설정 하면 OK 입 니 다.(2)
android:focusable="false"
android:focusableInTouchMode="false"
android:cacheColorHint="#00000000"
android:listSelector="#00000000"

8. listview 기본 클릭 으로 선택 한 색상 을 바 꾸 고 listivew 의 listSelector 속성 을 설정 하면 됩 니 다.
9. 스마트 하 게 남 은 화면 을 채 울 때 가끔 아래 두 문장 은 안 드 로 이 드: layotwidth = "match parent" 이것 이 좋 습 니 다.더 스마트 하 게 남 은 화면 채 우기
android:layout_height="0dp"
android:layout_weight="1" 

10. ScrollView 속성 fillView port 를 사용 하여 안 드 로 이 드 레이아웃 이 전체 화면 을 채 울 수 없 는 문 제 를 해결 합 니 다. ScrollView 의 요소 가 ScrollView 를 채 우려 고 할 때 'fill parent' 를 사용 하 는 것 은 소 용이 없습니다. ScrollView 설정 이 필요 합 니 다. 안 드 로 이 드: fillView port = 'true'.  ScrollView 에 fillVeewport = "true" 가 없 을 때 안에 있 는 요소 (예 를 들 어 LinearLayout) 는 wrap 에 따라content 로 계산 합 니 다 ("fill parent" 가 설정 되 어 있 든 없 든). LinearLayout 요소 가 fill 을 설정 하면parent, 그것 도 소 용이 없습니다. LinearLayout 는 안의 요소 에 의존 하고 안의 요 소 는 LinearLayout 에 의존 하기 때문에 서로 모순 되 기 때문에 안의 요 소 는 fill 을 설정 합 니 다.parent, wrap콘 텐 츠 로 계산 합 니 다.
11. 대화 상자 이외 의 부분 을 클릭 하여 activity 종료
	public boolean onTouchEvent(MotionEvent event) {
		if (MotionEvent.ACTION_OUTSIDE == event.getAction()) {
			finish();
			return true;
		}
		return super.onTouchEvent(event);
	}

좋은 웹페이지 즐겨찾기