윤재성의 Java 기반 Android 9.0(pie) App 개발 기본 1단계
윤재성의 Java 기반 Android 9.0(pie) App 개발 기본 1단계
수강정보
(10개의 수강평)
236명의 수강생
27,500원
지식공유자 : 소프트캠퍼스
34회 수업 · 총 11시간 4분 수업
기간 : 평생 무제한 시청
수료증 : 발급 강의
수강 난이도 : 입문
guesswho 프로필

뷰를 구성할 때 버튼 세팅 관련 guesswho 1달 전
1.버튼에 리스너를 추가하기 전, ListAdapter의 getView메소드에서 버튼을 구성하는 코드가 없을 때의 실행 결과와 2.아래 코드를 작성했을 때(버튼을 구성하고 setOnClickListener를 버튼에 연결하지 않은 상태) Button sub_btn1=(Button)view.findViewById(R.id.button); Button sub_btn2=(Button)view.findViewById(R.id.button2); 의 실행결과가 동일하게 나타납니다.(두 가지 모두 textView 1개와 버튼 2개를 가진 항목이 보이고 버튼을 눌렀을 때는 동작하지 않음) 1, 2의 코드는 다른데 같은 결과가 나타나는데요! 1) 2번의 버튼을 구성하는 코드는 어떤 역할을 하는지(이 코드가 없어도 버튼이 구성되어 화면에 버튼이 보임), 또 2)두가지 케이스에 어떤 차이가 있는 것인지 궁금합니다.

1
현진관 프로필

ViewPager와 ViewPager2의 차이점에 대해 궁금합니다. 현진관 1달 전
안녕하세요. 저는 현재 자바 10.0을 기준으로 개발을 준비하면서 선생님 강의를 수강하고 있습니다. ViewPager 객체를 생성하고 싶은데, 저한테는 ViewPager2 객체만 생성할 수 있는 것으로 나오네요. ViewPager 객체하고 오버라이딩하는 메소드 등이 완전히 달라서 강의 내용을 따라갈 수가 없습니다.. ViewPager2 객체 생성시 호출해야 하는 어댑터와, 그 내의 메소드를 어떻게 사용해야 하는지요? 또 리스너도 ViewPager와는 다른 것을 써야 하는지요.

1
guesswho 프로필

에뮬레이터 실행시 오류가 발생합니다. guesswho 1달 전
Emulator: PANIC: Cannot find AVD system path. Please define ANDROID_SDK_ROOT Emulator: Process finished with exit code 1 다음의 오류가 발생합니다. 안드로이드 스튜디오를 삭제한 뒤 다시 설치해도 같은 문제가 발생하는데 해결방법을 알려주시면 감사하겠습니다.

1
박정훈 프로필

여러개의 다이얼로그 버튼(positive negative 등등)에 리스너 다는것 질문 드립니다. 박정훈 5달 전
2개 다이얼로그를 만들었습니다. 그리고 각각 positive,negative 버튼이 있는데요. 이 버튼마다 동작하는 것이 다 다르게 하고 싶습니다. 1번 다이얼로그의 positive 버튼 따로 동작하고 2번 아이얼로그 positive동작 따로 이런식으로요. 그래서 리스너 클래스를 2개 만들었는데요. 중복된다는 생각이 들어서요. 1개의 클래스만 만들어서  분기 할수 있는 방법이 혹시 있는지 질문 드립니다.

1
ckaqudwhgtlrdkTl 프로필

Adapter커스트마이징 후 이벤트를 연결하고 싶은 경우 ckaqudwhgtlrdkTl 5달 전
안녕하세요...멋진 강의 너무 잘 듣고 있습니다. 귀에 쏙쏙 들어오게 알려주셔서 저는 벌써 초급,중급, 고급 다 구매하여 듣고 있습니다. 그런데 하다 보니 궁금한 점이 있어 문의 드립니다. Adapter를 커스트마이징했습니다. 이 Adapter를 사용하는 SampleActivity가 하나 있구요. Adapter내부의 getView메소드에서는 ListView각 항목을 구성하고 있는 이미지나 체크박스 모두 이벤트가 잘 연결이 됩니다. 리스트뷰가 삽입된 SampleActivity는 MainActivity에서 인텐트를 통해 실행된 액티비티입니다. SampleActivity가 실행되고 리스트의 한 항목을 클릭했을때 SampleActivity가 종료되면서 MainActivity로 값을 가지고 돌아가고 싶은데 SampleActivity에서 리스트뷰에 이벤트 연결을 해도 반응하지 않습니다. 어댑터에서 이벤트가 붙으니까 거기서 인텐트의 데이터를 빼볼까 해도  setResult(RESULT_OK,intent);해서 MainActivity로 어떻게 되돌아갈까도 막힙니다. 어떻게 해야 할까요?

2
3DPIT 프로필

강좌 ppt 관련해서 3DPIT 6달 전
강좌에서  ppt 해주시는 자료를 받을수 있을까 해서 문의드려요 . 가능 하시면 oksos0817@naver.com 으로 보내주시면 감사하겠습니다. 제가 공부하는데 적으면서 하는게 습관이라서 부탁드려요

1
ckaqudwhgtlrdkTl 프로필

안드로이드 단말기 화면을 에뮬레이터처럼 보고싶어요 ckaqudwhgtlrdkTl 6달 전
안드로이드 스튜디오에서 강좌에서 보는 것 처럼  실제 폰의 화면을 avd에서 실행되는 것 처럼 띄워서 PC화면에서 보고 싶습니다. 어떻게 해야 할까요?

1
이주혁 프로필

view들을 마우스로 위치 설정(in RelativeLayout) 이주혁 6달 전
강의 후반부분에 모든 view들의 속성을 이용해서 배치한다면 프로그래머들이 고생을 할 것이라고 말하시면서, 안드로이드 스튜디오에서는 초록선을 바탕으로 마우스로 view들의 위치를 설정할 수 있다고 하셨는데요. 제 안드로이드 스튜디오에서는 초록색 선이 보이지 않고,  마우스로 아무리 기존 버튼의 옆에 배치하더라도 default값인 왼쪽 상단에 배치가 됩니다. 어떻게 하면 저도 마우스로 쉽게 view들을 배치할 수 있을까요?

1
qkrtndus3062 프로필

setText와 append의 차이점을 알고싶습니다. qkrtndus3062 7달 전
class Dialog2Listener implements DialogInterface.OnClickListener{ @Override public void onClick(DialogInterface dialog, int which) { // AlertDialog로 형변환 AlertDialog alert = (AlertDialog)dialog; // AlertDialog가 가지고 있는 뷰 추출 EditText edit1 = (EditText)alert.findViewById(R.id.editText); EditText edit2 = (EditText)alert.findViewById(R.id.editText2); // 사용자가 입력한 문자열을 가져옴 String str1 = edit1.getText().toString(); String str2 = edit2.getText().toString(); text1.setText("edit1" + str1 + "\n"); text1.append("edit2 : " + str2); }}여기서 text1.append로 끝낸 이유가 알고싶습니다!

1
염기성 프로필

오버라이드시 파라미터 변수명 염기성 7달 전
안녕하세요. 수업 잘 듣고 있습니다. 궁굼한게 있어서 질문드립니다. 수업에서 진행하시 같은 방식으로 메서드를 오버라이드하고 있으면 강좌에서는 예를 들어서 (int year, int month, int dayOfMonth)이런식으로 변수명만으로도 이게 무엇을 나타내고 있는지 알 수 있습니다. 하지만 제 개발환경에서는 (int i, int i2, int i3)이런식으로 변수명을 봤을 때 무엇을 나타내는지 알 수가 없습니다. 버전문제는 아니라고 생각을 하는게 저는 모두 최신으로 업데이트 한 상태에서 사용을 하고 있기 때문에 예전에는 변수명을 친절히 알려주다가, 업데이트 후에 변수명이 저렇게 됐다고 보기에는 어려울 것 같습니다. 혹시 문제를 알고 계신다면 알려주세요.

1
박정훈 프로필

리스트뷰를 길게 클릭하면.. 리스트를 선택할수있게 . 하는 방법 박정훈 8달 전
리스트뷰를 길게 클릭하면.. 리스트 뷰가 체크박스로 바뀌면서  선택할수있게 . 하는 방법이 있을까요. 이런 기능이 따로 있나요 아니면 전부 일일히 만들어줘야 하나요?

1
귐김 프로필

android.support.v7.widget.SearchView 오류 귐김 8달 전
 <item         android:id="@+id/item5"         android:icon="@android:drawable/ic_menu_search"         android:title="메뉴5"         app:showAsAction="always|collapseActionView"         app:actionViewClass="android.support.v7.widget.SearchView"/> v7.widget.SearchView 부분이 빨간색으로 되고  실행하면 되긴하는데 검색창 뜨는 기능이 실행이안됩니다  이유가뭘까요 도와주세요

1
박정훈 프로필

리스트 뷰 질문 입니다. 박정훈 8달 전
리스트 뷰  로우에 이미지와 텍스트가 각각 들어갔을때  이미지와 텍스트를 각각 클릭했을때 반응을 다르게 하고 싶으면 어떻게 해야할까요. OnItemClickListener  <-- 여기  매개변수를 보니까 각각 나눠져 있지는 않고 row 자체의 정보나 listview 정보만 담고있어네요 혹시 방법이 있을까요? 

2
andrewlee 프로필

질문입니다. andrewlee 8달 전
코드화면, 에뮬레이터 화면입니다.  강의흐름에 따라서 코드를 쳤는데 작동을 하지 않네요 ㅠㅜ  확인을 해보니  img.setImageResource(R.drawable.ic_launcher_foreground);textView.setText("asdasd"); 이 두 문장을 더하면 강제 종료가 되는 것 같습니다 문제가 무엇일까요 ?

1
박정훈 프로필

리스트 레이아웃에 이미지 넣을때 박정훈 8달 전
꼭 한번 이렇게 에러가 뜨고 다시 이미지 를 다른것으로 바꿔주면 에러가 없어지는데요.. 왜 그런지 잘 모르겠습니다.. 아래는 에러 로그 입니다. 이미지 이름에 혹시 숫자나 대문자 들어가면 안되나요? 이미지 파일명에 어떤 규칙이 있을까요? 01-19 12:27:33.527 29150-29150/? E/libprocessgroup: failed to make and chown /acct/uid_10072: Read-only file system 01-19 12:27:34.101 29150-29150/com.first.myapplication E/AndroidRuntime: FATAL EXCEPTION: main     Process: com.first.myapplication, PID: 29150     android.content.res.Resources$NotFoundException: Resource ID #0x7f06005f         at android.content.res.Resources.getValue(Resources.java:1266)         at androidx.appcompat.widget.ResourceManagerInternal.loadDrawableFromDelegates(ResourceManagerInternal.java:252)         at androidx.appcompat.widget.ResourceManagerInternal.getDrawable(ResourceManagerInternal.java:139)         at androidx.appcompat.widget.ResourceManagerInternal.getDrawable(ResourceManagerInternal.java:132)         at androidx.appcompat.content.res.AppCompatResources.getDrawable(AppCompatResources.java:104)         at androidx.appcompat.widget.AppCompatImageHelper.setImageResource(AppCompatImageHelper.java:86)         at androidx.appcompat.widget.AppCompatImageView.setImageResource(AppCompatImageView.java:94)         at android.widget.SimpleAdapter.setViewImage(SimpleAdapter.java:240)         at android.widget.SimpleAdapter.bindView(SimpleAdapter.java:190)         at android.widget.SimpleAdapter.createViewFromResource(SimpleAdapter.java:126)         at android.widget.SimpleAdapter.getView(SimpleAdapter.java:114)         at android.widget.AbsListView.obtainView(AbsListView.java:2347)         at android.widget.ListView.makeAndAddView(ListView.java:1864)         at android.widget.ListView.fillDown(ListView.java:698)         at android.widget.ListView.fillFromTop(ListView.java:759)         at android.widget.ListView.layoutChildren(ListView.java:1673)         at android.widget.AbsListView.onLayout(AbsListView.java:2151)         at android.view.View.layout(View.java:15671)         at android.view.ViewGroup.layout(ViewGroup.java:5038)         at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)         at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)         at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)         at android.view.View.layout(View.java:15671)         at android.view.ViewGroup.layout(ViewGroup.java:5038)         at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)         at android.widget.FrameLayout.onLayout(FrameLayout.java:514)         at android.view.View.layout(View.java:15671)         at android.view.ViewGroup.layout(ViewGroup.java:5038)         at androidx.appcompat.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:446)         at android.view.View.layout(View.java:15671)         at android.view.ViewGroup.layout(ViewGroup.java:5038)         at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)         at android.widget.FrameLayout.onLayout(FrameLayout.java:514)         at android.view.View.layout(View.java:15671)         at android.view.ViewGroup.layout(ViewGroup.java:5038)         at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1703)         at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1557)         at android.widget.LinearLayout.onLayout(LinearLayout.java:1466)         at android.view.View.layout(View.java:15671)         at android.view.ViewGroup.layout(ViewGroup.java:5038)         at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)         at android.widget.FrameLayout.onLayout(FrameLayout.java:514)         at android.view.View.layout(View.java:15671)         at android.view.ViewGroup.layout(ViewGroup.java:5038)         at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2086)         at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1843)         at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1061)         at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5885)         at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767)         at android.view.Choreographer.doCallbacks(Choreographer.java:580)         at android.view.Choreographer.doFrame(Choreographer.java:550)         at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753)         at android.os.Handler.handleCallback(Handler.java:739)         at android.os.Handler.dispatchMessage(Handler.java:95)         at android.os.Looper.loop(Looper.java:135)         at android.app.ActivityThread.main(ActivityThread.java:5254)         at java.lang.reflect.Method.invoke(Native Method)         at java.lang.reflect.Method.invoke(Method.java:372)         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)     at com.android.interna

1
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스