콘텐츠
참고 :이 기사에서는 사용자가 Android 개발 및 Java의 기본 사항에 익숙하다고 가정합니다. 기본 레이아웃을 만들고 뷰를 사용할 수 있어야합니다. onClick 과 findViewByID. 이러한 개념을 이해하면 조각을 사용하는 법을 배울 준비가되었습니다!
조각은 모듈 형 방식으로 앱 디자인에 접근 할 수있는 훌륭한 Android UI의 강력한 기능입니다. 이는 전체 레이아웃을 포함 할 수 있고 자체 Java 코드와 함께 제공되는 고유 한보기입니다. 이러한 방식으로 UI를 세분화하면 사용자가 이해하기 쉬운 논리적 레이아웃을 더 만들 수 있습니다. 활동을 떠나지 않고도 추가 정보와 제어 기능을 제공 할 수 있습니다.
참조 : 번거롭지 않은 조각 : Android의 탐색 아키텍처 구성 요소 사용
조각은 앱 디자인에서 훨씬 더 많은 옵션을 제공하며 사용자 경험을 크게 향상시킬 수 있습니다.
또한 조각은 클래스 및 객체처럼 작동하여 여러 개를 가질 수 있다는 점입니다. 인스턴스 같은 조각의. 즉, 코드를 다시 쓰지 않고도 동일한 레이아웃을 반복해서 재사용하거나 두 가지 버전을 나란히 표시 할 수 있습니다.
요컨대, 이것은 아직 다른 Android 앱과 관련된 끝없는 할 일 목록과 관련하여 배우는 것은 앱 디자인에서 훨씬 더 많은 옵션을 부여하고 사용자 경험을 실질적으로 개선하여 익숙한 시간보다 가치가있는 것입니다. .
첫 번째 Android 조각을 빌드하는 방법
그렇다면 다른 방법으로는 이해가되지 않는 조각으로 무엇을 할 수 있습니까?
파일 목록이있을 수 있습니다. 이미지 갤러리 일 수도 있습니다. 설명을 표시하고 사용자에게 삭제 또는 공유 옵션을 제공하려고합니다. 그런 종류의 것. 별도의 활동을 사용하여 매번 새로운 '설명'페이지로 보낼 수 있지만 조각을 사용하는 경우 한 페이지에 보관할 수 있습니다.
Android Studio를 열고 임의의 이미지 목록을 만듭니다. activity_main.xml. 나는 사진을 사용하고 있습니다 드래곤 볼 슈퍼 내가 대단하고 그게 내 PC에 누워있는 것이기 때문에…
이제 첫 번째 조각을 만들겠습니다.
이를 위해, 당신은 향할 것입니다 파일> 새로 작성> 단편. 이 작업을 수행 할 때 MainActivity.java를 왼쪽에서 선택해야하며 지금은 '빈'프래그먼트를 선택합니다. 그런 다음 새로 만든 작품의 이름을‘설명’이라고 선택할 수 있습니다. 아래에있는 두 상자를 선택 해제하십시오. 지금은 필요하지 않습니다.
이 작업이 완료되면 Description.java라는 새로운 Java 파일뿐만 아니라 새로운 클래스를 만든 것처럼 fragment_description.xml이라는 새로운 레이아웃 파일도 갖게됩니다. 즉, 새 조각과 함께 제공되는 코드를 별도의 Java 파일에 배치해야합니다.
레이아웃, 뷰 및 코드 추가
좋은 소식은 조각을 사용할 때 뷰와 레이아웃을 추가하는 것이 매우 쉽다는 것입니다. 우리는 fragment_timer.xml을 편집하여 평소와 같이이 작업을 수행합니다.
선형 레이아웃을 다시 사용하겠습니다. 이번에는 몇 가지 컨트롤과 설명 텍스트를 추가합니다. 지금 여기에 무엇이든 붙일 수 있습니다.
이제 다음 질문은 앱에 실제로 어떻게 표시됩니까?
다른보기와 마찬가지로 조각을 활동에 추가하여이를 수행 할 수 있습니다. 따라서 activity_main.xml로 가서 화면의 일부를 차지할 수 있도록보기를 추가하십시오.
내가하고있는 방식으로하고 싶다면 수직 선형 레이아웃을 사용하고 모든 이미지에 1의 가중치를 부여하고 조각에 2의 가중치를 부여했습니다.
미리보기에는 실제 조각이 아니라 자리 표시 자만 표시됩니다. 마찬가지로 Android에서 조각의 위치를 알 수 있도록 조각의 이름을 XML에 포함시켜야합니다. 또한 모든 조각에 대한 ID가 필요합니다.
코드
논의한 바와 같이, 프래그먼트를 사용해야하는 코드는 자체 Java 파일로 이동합니다. 이 경우 Description.java 파일입니다.
이 페이지를 체크 아웃하면 생성자 (객체를 만드는 클래스와 마찬가지로)와 메소드가 있음을 알 수 있습니다. onCreateView. 이 방법은 xml을 사용하여 해당 뷰를 부 풀리는 데 사용되며 일반적인 방법과 동일합니다. onCreate 표준 활동의 방법.
대부분의 경우 일반적으로 여기에서하는 것처럼 작업을 수행 할 수 있습니다. findViewByID 작동하고 이것을 사용하여 텍스트 등을 변경할 수 있지만 약간 다르게 참조를 가져와야합니다. 읽는 줄을 변경하십시오.
inflater.inflate (R.layout을 반환합니다.fragment_description, 컨테이너, 거짓);
에:
보기 v = inflater.inflate (R.layout.fragment_description, 컨테이너, 거짓);
그런 다음 사용하십시오.
v.findViewByID.
이제 평소와 같이 뷰에 액세스 할 수 있습니다.
공개보기 onCreateView (LayoutInflater 인플레이터, ViewGroup 컨테이너, 번들 savedInstanceState) {보기 v = inflater.inflate (R.layout.fragment_description, 컨테이너, 거짓); 버튼 okButton = v.findViewById (R.id.승인) ;; 버튼 shareButton = v.findViewById (R.id.몫); okButton.setOnClickListener (new View.OnClickListener () {public void onClick (View v) {토스트.makeText(getActivity (), "OK!", 토스트.LENGTH_LONG ).보여 주다(); }}); shareButton.setOnClickListener (new View.OnClickListener () {public void onClick (View v) {토스트.makeText(getActivity (), "공유 ...", 토스트.LENGTH_LONG ).보여 주다(); }}); v를 반환; }}
다중 인스턴스와 함께 조각 사용
프래그먼트를 사용할 때 간소화 된 UI와 코드를 만드는 것이 훨씬 쉬운 방법을 알 수 있습니다. 레이아웃 내 레이아웃을 사용하고 단일 Java 파일 내에서 많은 클릭을 저글링하는 대신. 또한이 '모듈 식'접근 방식을 사용하면 활동과 메뉴 및 기타 동적 위치에서이보기를 사용할 수 있습니다.
그러나 정말 멋진 부분은 동시에 존재하는이 동일한 조각의 여러 인스턴스를 가질 수 있다는 사실입니다.
이 작업은 간단합니다. 둘 이상의 뷰를 추가하고 정확한 동일한 코드로 팽창시킵니다.
이제 프래그먼트를 사용하는 힘의 일부를 볼 수 있기를 바랍니다. 각각의 세부 사항과 컨트롤이 바로 아래에있는 Recycler View (스크롤 목록) 이미지가 있다고 상상해보십시오. 매번 완전히 새로운 레이아웃을 만들 필요가 없으며 사용자가 그림을 클릭 할 때까지보기를 숨길 수 있습니다!
또한 프로그래밍 방식으로 새 조각을 생성 할 수도 있습니다. 프레임 레이아웃과 같이 프래그먼트가 레이아웃에 들어가는 곳이면됩니다. fragmentTarget) 그리고 다음을 수행 할 수 있습니다.
Fragment addedFragment = new Description (); FragmentTransaction 트랜잭션 = getSupportFragmentManager (). beginTransaction (); transaction.replace (R.id.fragmentTarget, addedFragment); transaction.addToBackStack (null); transaction.commit ();
필요한 클래스를 가져와야합니다. 코드에서 조각을 사용하려고 할 때마다 메시지가 표시됩니다. 'v4'라는 최상위 옵션을 선택하세요.
프래그먼트로 프래그먼트를 추가 할 수있는 것은 중요합니다. 즉, 다운로드 한 이미지, 특정 폴더 등에있는 동적 이미지 목록을 생성 한 다음 세부 정보를 즉시 표시 할 수 있기 때문입니다.
따라서이 새로운 예에서는 두 번째 조각이 프로그래밍 방식으로 추가되었습니다.
마지막으로, 조각의 위치에 따라 조각의 모양을 변경하고 싶을 수 있습니다. 좋은 소식은 조각을 만들 때 ID를 번들로 전달한 다음 다른 쪽에서 해당 값을 추출하여 쉽게 수행 할 수 있다는 것입니다.
MainActivity.java에서 다음을 사용하십시오.
번들 번들 = 새 번들 (); bundle.putInt ( "ID", 1); addedFragment.setArguments (번들);
그런 다음 Description.java에서 다음을 추가하십시오.
int eyeD = 0; 번들 번들 = this.getArguments (); if (번들! = null) {eyeD = bundle.getInt ( "ID", 0); } 스위치 (eyeD) {사례 1 :…
예를 들어 앱에서 각 이미지마다 다른 메모를 표시하도록 할 수 있습니다.
댓글 닫기
이것이 조각을 사용하는 방법입니다. 잘만되면 당신은 기본을 이해 하고이 게시물은 당신이 계속하고 나머지를 알아낼 수 있다는 충분한 이해를 제공했습니다. 더 중요한 것은 조각의 가능한 사용과 더 똑똑한 앱 디자인에 제공 할 수있는 잠재력을 보여 주었기를 바랍니다.
작동중인 다른 조각 예제를 보려면 사용자 정의 실행기 작성에 대한 최근 게시물을 확인하십시오!
안드로이드 개발 :
- 단 7 분만에 Android 용 VR 앱을 만드는 방법
- Google 어시스턴트를위한 나만의 액션 만들기
- 루트 안드로이드 : 당신이 알아야 할 모든 것!
- 앱 분석 : 활동 수명주기 소개
- Android Jetpack : 최근 발표 내용은 Android 지원 라이브러리에 어떤 의미가 있습니까?