Java 기반 Android 9.0(pie) App 개발 기본 1단계

Java 기반 Android 9.0(pie) App 개발 기본 1단계

(9개의 수강평)

197명의 수강생
Android모바일 앱
27,500원
지식공유자 · 소프트캠퍼스
34회 수업· 총 11시간 4분수업
평생 무제한 시청
수료증 발급 강의
수강 난이도 입문
박정훈 프로필

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

1
ckaqudwhgtlrdkTl 프로필

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

2
3DPIT 프로필

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

1
ckaqudwhgtlrdkTl 프로필

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

1
이주혁 프로필

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

1
qkrtndus3062 프로필

setText와 append의 차이점을 알고싶습니다. qkrtndus3062 5달 전
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
염기성 프로필

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

1
박정훈 프로필

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

1
귐김 프로필

android.support.v7.widget.SearchView 오류 귐김 5달 전
 <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
박정훈 프로필

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

2
andrewlee 프로필

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

1
박정훈 프로필

리스트 레이아웃에 이미지 넣을때 박정훈 5달 전
꼭 한번 이렇게 에러가 뜨고 다시 이미지 를 다른것으로 바꿔주면 에러가 없어지는데요.. 왜 그런지 잘 모르겠습니다.. 아래는 에러 로그 입니다. 이미지 이름에 혹시 숫자나 대문자 들어가면 안되나요? 이미지 파일명에 어떤 규칙이 있을까요? 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
박정훈 프로필

이것도 배워야 하는지? 질문입니다. 박정훈 6달 전
공부하는 과목에 대한 질문입니다.  찾아보니까 데이터 베이스관련 강좌도 있으셔서 질문 드립니다. 평소에 업무할때 엑셀로 많이 하는데요 그러다 보니 너무 느리고 비효율적인게 많고 특히 전기가 안들어오는 외부에서 일할때는 너무 답답한 점이 많습니다. 그래서 어플을 만드려고 열심히 공부 중입니다. 물건을 입출고,판매 할때 쉽게 재고관리하는 앱을 만들고 싶은데요.(엑셀로 함수와 vba를 적절히 섞어서  구현해봤는데 이거 물량 늘어나면 컴퓨터가 멈추네요. 그렇다고 엑세스를 배우자니 그것도 엑셀하고 비슷해서...) 아무래도 엑셀로 작업하던 자료가 서버(호스팅이든 자체서버든 간에)에 저장되면서 관리가 되야 할 것 같습니다.  그래서 질문 드립니다. 데이터베이스 sql 도 배워야 할까요?  구지 안배워도 지장없다고 하는 이야기도 듣긴했는데..배워야 하는지 말아야 하는지 잘 모르겠습니다.  추후에 서버까지 직접 관리할 생각이라면 jsp 같은것도 배워야 할까요?  jsp 대충 개요만 훝어봤는데 이거는 하려면 html css js 를 구현할줄 알아야 들을수 있는 수업이라서 공부하기전에 준비를 많이 해야할것 같은데요.  할거는 많고, 시간은 없는것 같고,  그래서 전체 그림을 알고서 배우고 싶어요. 이런 고민을 해결하기 좋은 커뮤니티나 도서가 혹시 있을까요?  잘 몰라서 질문 드립니다.  공부하면서 틈틈히 구글링 하고 있는데 답변을 얻을만한 곳이 마땅히 없네요. 도와주세요. 

1
박정훈 프로필

시행착오가 좀 있었어요. 혹시 다른분들 이나 강의하실때 부연설명 하면 좋을것 같아서 글 올립니다. 박정훈 6달 전
ㅠㅠ 다이얼로그에 메시지세팅도 해놓고 리스트넣으려고 셋아이템 계속 넣었었는데  안되서 배열문제인줄 알고 계속 바꿔가면서 하다가 ㅋㅋ 메세지 세팅을 지우고 나서야 원인을 알았네요. 다이어로그에 메시지 세팅하면 리스트가 안뜹니다. ㅋㅋ 

1
박정훈 프로필

이미지 세팅리소스 에 그림만 넣으면 에러가 뜹니다. 박정훈 6달 전
색상을바꾸거나 하면 괜찮은데요. 그림만 넣으면 샘플 파일, png다운받은거 스샷 찍은거 전부 넣기만 하면 에러뜹니다. xml파일에 src 로 넣어도 가끔 에러가 뜨고 로그를 보니 null exception 이라는 말이 좀 있길래 아이디하고, 참조변수하고 파일명 잘못됬는지 확인했는데 이상없구요. 이미지에 이미지만 넣으면 에러가 뜨는데 왜 그런지 잘 모르겠어요. 아래는 토스트 메시지 메소드 입니다.  셋 이미지리소스에 컬러를 넣어놨는데 저기에 그림 넣으면 바로 에러뜹니다 ㅠ ㅠ  왜 그런걸까요. public void to(View view){LayoutInflater inflater = getLayoutInflater();View v1 = inflater.inflate(R.layout.toast,null);ImageView img = v1.findViewById(R.id.img);TextView text = v1.findViewById(R.id.text);text.setText("love");//바로여기img.setImageResource(R.color.colorPrimary);Toast t1 = new Toast(this);t1.setView(v1);t1.show();}

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