목록Android Studio (13)
개인공부용123 프로그래밍 블로그
아래와 같은 알림메세지 창을 띄우는 코드 및 설명입니다. 가운데 있는 버튼을 클릭시 위와 같은 다이얼로그 창을 띄워줍니다. 아래는 소스코드입니다. public class MainActivity extends Activity { final Context context = this; private Button button; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); button = (Button) findViewById(R.id.buttonAlert); // 버튼 리스너 추가 button.setOnClickListener(new OnClickL..
위 그림과 같이 버튼으로 PopupMenu를 실행하는 간단한 예제입니다. public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button btn = (Button) findViewById(R.id.btn); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { PopupMenu popup= new Popup..
AppcompatActivity에서 타이틀바를 제거하려고했는데 requestWindowFeature(Window.FEATURE_NO_TITLE)를 코드상에 적용해서 타이틀바를 없애려했는데 제대로 작동하지않습니다. AppcompatActivity에서 타이틀바를 제거하려면 위와 같이 android:theme="@style/AppTheme"> 부분을 ctrl + 좌클릭합니다. style.xml에 위와 같이 xml코드를 추가해줍니다. 그러면 titlebar가 제가됩니다. 위와 같이 타이틀바가 제거됩니다.
버튼을 이용해서 팝업메뉴를 호출하는 예제입니다. getMenuInflater().inflate(R.menu.option_menu, popup.getMenu())를 사용해서 리소스의 메뉴를 실제메뉴로 전개했습니다. res > menu > option_menu.xml 내에 있는 메뉴 xml입니다. public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_NO_TITLE); super.onCreate(savedInstanceState); setContentView(R.layout.activity_..
안드로이드 스튜디오 VIew에서INVISIBLE은 안보이게하지만 레이아웃에서 공간을 차지하게 하는 형태이고GONE은 레이아웃에서 공간도 차지하지않고 안보이게 하는 형태입니다.
ImageView image; 이미지 변수를 지정한후image = (ImageView) findViewById(R.id.이미지를 저장할 id); 이때 저장한 이미지 이름은 layout에 설정된 ImageView의 id입니다. 위와 같이 기본 설정을 했으면 ImageView에 이미지 넣기image.setImageResource(R.id.이미지 이름);이미지 이름은 res/drawable에 저장된 이미지 파일명입니다. ImageView에서 이미지 제거imageVeiw.setImageResource(0);
쓰레드 -3- AyncTask에관한 글: http://itmir.tistory.com/624 위 링크에 AsyncTask의 설명이 잘되어있습니다. AsyncTask는 핸들러를 사용하지않고 쓰레드를 이용한 백그라운드 작업을 하면서 UI객체에 접근할수 있게 해줍니다. AsyncTask 클래스를 상속하여 새로운 클래스를 정의하면 그 내부에서 필요한 경우다 호출되는 메소드를 재정의하여사용할 수 있습니다. AsyncTask에 정의된 주요 메소들에 대한 설명은 아래와 같습니다. 메소드 이름 설 명 doInBackground 새로 만든 쓰레드에서 백그라운드 작업을 수행합니다. execute()메소드를 호출할 때 사용된 파라미터를 배열로 전달 받습니다. onPreExecute 백그라운드 작업을 수행하기전 호출되며 메인..
쓰레드 -2- 쓰레드 Handler에관한 글: http://itmir.tistory.com/366 Handler에 관한글은 위 블로그에 잘 정리 되어있습니다. Handler를 상속 받는 class 예제와 Runnable객체를 이용하는 예제를 간략히 설명하겠습니다. - Handler 상 속 클 래 스 코 드 예 제 - package org.androidtown.thread; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.widget.ProgressBar;..
쓰레드 -1- 새로운 프로젝트를 생성하게되면 자동으로 생성되는 메인 액티비티는 어플리케이션이 실행될 때 하나의 Main프로세스에서 실행됩니다. 만약 하나의 프로세스 안에서 여러개의 작업이 동시에 수행되기위해서는 새로운 쓰레드를 만들어서 처리할수 있습니다. 멀티 쓰레드 방식은 같은 프로세스 안에서 메모리 리소스를 공유하게 되므로 효율적인 처리가 가능하지만 동시에 리소르를 접근할 경우 데드락이 발생할수도 있습니다.(데드락을 해결하기위한 여러방법이 있지만 언급하지않겠습니다.) - 코 드 예 제 - public class MainActivity extends AppCompatActivity { private int value = 0; private boolean running = false;..
SQLite를 이용해서 메모장 어플리케이션 만들기 SQLite를 이용해서 만든 메모장 어플리케이션에 대한 간략한 설명을 하겠습니다.(프로젝트는 해당 포스팅 맨밑 부분에 있습니다.) SQLite를 이용해서 Memo_Storage파일을 핸드폰의 디바이스 저장공간에 만들고Memo_Storage 파일에 데이터베이스를 만들어서 메모장에 관한 정보를 저장하는 메모장 어플리케이션 입니다. 어플리케이션이 실행됬을시 사진으로 간략한 설명을 해보겠습니다. 메모장 어플리케이션을 처음실행하면 위의 사진처럼 시작합니다. 새메모 버튼을 누를시 위의 사진처럼 됩니다. ImageView인 사진을 선택하세요창을 누를시 위와같이 Dialog가 나옵니다. 사진 불러오기를 선택하고 선택을 누를경우 Coverflow.java를 사용해서 사진..