2011-10-04 3 views
3

사용자 지정 기본 설정을 만들었지 만 해당 채우기가 표준 기본 설정의 채우기처럼 보이지 않습니다. 아무도 그들이 숫자로 노는없이 추가 될 수있는 방법을 알고 있습니까? 파란색 배경의 사진에는 미리 설정된 패딩이없는 새로운 기본 설정 항목이 있습니다. 여러 장치에서 테스트 후사용자 지정 기본 설정의 표준 채우기

Custom preference with blue background

는 다른 장치에 표준 패딩이 다르다는 것을 알게되었습니다. 패딩을 수동으로 설정하면 UI가 일치하지 않게됩니다.

답변

1

은 아이콘의 장소이다. 환경 설정 레이아웃에는 자체 여백이 있습니다. 내 레이아웃을 부풀려서 공간과 여백을 스스로 정의하면 레이아웃을 부분적으로 상속 할 수 없습니다. 그러나 환경 설정에는 환경 설정 컨트롤의 오른쪽에 나머지 공간을 사용하는 "widgetLayout"레이아웃이 있습니다. 이 공간은 기본 레이아웃으로 사용자 정의 할 수 있습니다.

+0

그래서 왼쪽 패딩은 표준 – 4ntoine

+0

과 같습니다. 문제가 생길 무렵에는 표준 패딩을 상속 할 수있는 방법을 찾지 못했습니다. – Maxim

0

일반적으로 기본보기 요소를 변경해야하는 경우가 아니면 일반적으로 기본보기 요소 만 남기를 원합니다.

3.x 용 패딩은 큰 화면을 사용하기 때문에 약간 다릅니다.

different layouts for different size screens을 지정하고 더 잘 작동하는지 확인해보십시오.

기억해야 할 중요한 점은 장치 UI 기본값이 기본값보다 중요하다는 것입니다. 이것은 iOS가 아닙니다. 모든 종류의 미친 화면 크기가 될 곳으로 앱을 보내고 있습니다. 앱을 그렇게 프로그래밍해야합니다.

또 다른 옵션은 display-independent pixels을 사용하여 크기를 지정하는 것이지만 거의 항상 백분율과 비율로 설명하는 것이 좋습니다.

희망이 도움이됩니다.

+0

좋은 이유가 있습니다. 표준 환경 설정 중에서 안드로이드가 제공하는 것보다 다른 레이아웃을 갖는 사용자 지정 환경 설정을 만들어야합니다. 내 맞춤 레이아웃이 표준 환경 설정 스타일을 상속받을 수 있기를 바랍니다. 제조업체는 UI를 사용자 정의하고 표준 스타일을 무시하므로 모든 장치에서 각 사용자 지정 기본 설정 레이아웃을 테스트하여 각 제조업체마다 다른 스타일 크기를 찾을 수 없습니다. 픽셀 또는 백분율을 사용하여 문제를 저장하지 않을 경우 중요하지 않습니다. 표준 환경 설정에는 사용자 정의와 다른 들여 쓰기가 있습니다. – Maxim

1

이 내용은 중복 된 것으로 보입니다.이 질문에 대한 답변을 통해 도움을 얻을 수 있습니다. 왼쪽 의도

Custom preference, targetSdkVersion="11": missing indent?

+1

선택을 취소해서 죄송합니다. 결국 문제가 해결되지 않았습니다. CommonsWare는 사용자 지정 기본 설정이 표준 기본 설정을 확장 할 때 예제를 설명했습니다. 그의 경우에는 DialogPreference입니다. 필자의 경우, 기본 설정 "기본 설정"클래스를 확장하여 다른 레이아웃을 사용자 정의 기본 설정에 추가하려고합니다. 그의 해결책을 시도하면서 나는 자신의 취향을 얻지 못했다. – Maxim

관련 문제