이미지의 화질이 낮아 지는 문제를 해결하려면 ImageLoader.java 파일의 decodeFile()에서 다음 부분을 주석 처리할 것


            //Find the correct scale value. It should be the power of 2.

//            final int REQUIRED_SIZE=70;

//            int width_tmp=o.outWidth, height_tmp=o.outHeight;

            int scale=1; // 이건 살려 두고...

//            while(true){

//                if(width_tmp/2<REQUIRED_SIZE || height_tmp/2<REQUIRED_SIZE)

//                    break;

//                width_tmp/=2;

//                height_tmp/=2;

//                scale*=2;

//            }



 

APM 실습

Posted by NanoSoft

1. APMSetup 설치

http://dev.naver.com/projects/apmsetup/download


2. MySQL을 사용한 데이터베이스 및 테이블 생성

3. 테이블 조작



4. PHP를 통한 데이터베이스 접근





데이터베이스-실습(2013-10-01).pdf


 

12/6: 메니페스트에 퍼미션 추가할 것 (그림을 임시로 SD 카드에 저장)

android.permission.WRITE_EXTERNAL_STORAGE


StarList(2013-12-06)SD카드퍼미션추가.zip


-------------------------------------------------------------

수업시간 실습자료 첨부


(old)

StarList.zip


서버 디렉토리 php 파일 및 sql 파일 있음

--------------------------------------------------------------------------------------------------

연예인 정보 조회 앱 개발 (Level별 구현 프로젝트)

- 평가 기준: 미적 완성도, 기술적 완성도 (전체 성적 100점 중 텀프로젝트 20점, Homework 포함)

- 결과 보고서 제출일: 12/20 금요일 오후 5시 디지털관 325호 양민혁 조교에게 제출

- 첨부된 결과 보고서 양식 사용


결과보고서양식.hwp



Level 1. (최대 70점) 연예인 정보 리스트 출력. 클릭하면 인텐트 세부 정보 표시


Level 2. (최대 100점) 외부 DB 서버에 연예인 정보 저장, 통신을 통해 안드로이드에서 출력

         <참고 자료>

            - Android PHP MySQL tutorial 구글 검색 ( http://codeoncloud.blogspot.kr/2013/07/android-mysql-php-json-tutorial.html )

            - LazyList (이미지 비동기 다운로드) ( https://github.com/thest1/LazyList )


Level 3. (최대 100점, 완성도 점수 회복, Homework 및 출석 점수 회복) Bluetooth 통신(자신이 XML 정의하여 사용)을 통해 옆 친구와 공유하여 외부 DB 서버에 저장 가능 

         <참고 자료>

            - Android SDK Example의 Bluetoothchat 참조

              ([설치 디렉토리]\adt-bundle-windows-x86_64-20130917\sdk\samples\android-15\BluetoothChat)


'2013년 2학기 > 스마트앱프로그래밍' 카테고리의 다른 글

ImageLoader의 이미지 깨짐 방지  (0) 2013.12.04
APM 실습  (0) 2013.11.25
ViewPager 실습 예제  (0) 2013.11.25
단순 리스트 프로그래밍 예제  (0) 2013.11.12
탭 프로그래밍 실습 예제  (0) 2013.11.12
 

ViewPager 실습 예제

Posted by NanoSoft

image0.png, ~ image4.png까지 drawable에 추가해야 함


TestViewPager.zip


 

수업 시간에 수행한 예제를 올려 드립니다.


(다운로드 에러 발생: Term Project의 리스트 예제 받을 것)

TestList.zip


 

수업 시간에 실습한 내용을 올려드립니다.


TestTab.zip


 

사용자가 탭을 눌러서 각기 다른 UI를 출력할 수 있도록 프로그래밍하시오.

 

- Homework #4에서 만든 프로그램과 관련된 내용으로 다른 UI를 출력할 것

- WebView(교재 263 페이지부터 설명 또는 Google 검색) 사용 권장 (자신의 페이스북, 트위터 등 연결, 자바 스크립트는 안써도 되고 단순 페이지 로딩) 

   Hint) mytab.xml 파일에 WebView을 만들고 다음 소스 코드 활용. AndroidManifest.xml에서 인터넷 접속 권한 부여 필요

- 이후 수업시간에 다룰 리스트를 넣어도 됨

- 부득이한 경우 Homework #4 이외의 다른 프로그램을 만들어도 인정됨


제출일: 1분반 11/19(화), 2분반 11/19(화)


수업시간 전까지 프린트를 완료하여 교탁에 올려 놓을 것

 


겉장에 숙제 번호와 제목을 적을 것 (이 글의 제목)


겉장에 분반, 학과, 학년, 학번, 이름을 적을 것



실행 화면 및 소스코드 출력할 것

 

사용자가 화면을 회전함에 따라 다른 UI를 출력할 수 있도록 프로그래밍하시오.

 

- Homework #2에서 만든 프로그램의 같은 기능을 하는 가로, 세로 화면으로 전환

- 가로, 세로 화면은 화면의 특성에 맞춰 배치를 다르게 만들 것

- 부득이한 경우 Homework #2 이외의 다른 프로그램을 만들어도 인정됨

 

제출일: 1분반 11/12(화), 2분반 11/12(화)

수업시간 전까지 프린트를 완료하여 교탁에 올려 놓을 것

 

겉장에 숙제 번호와 제목을 적을 것 (이 글의 제목)

겉장에 분반, 학과, 학년, 학번, 이름을 적을 것

 

실행 화면 및 소스코드 출력할 것

 

중간고사의 문제를 완성하시오.

 

제출일: 1분반 11/5(화), 2분반 11/5(화)

수업시간 전까지 프린트를 완료하여 교탁에 올려 놓을 것

 

겉장에 숙제 번호와 제목을 적을 것 (이 글의 제목)

겉장에 분반, 학과, 학년, 학번, 이름을 적을 것

 

실행 화면 및 소스코드 출력할 것

 

 

교재의 예제를 Parcelable 없이 고친 예제 입니다.

 

하나로 묶어야 할 필요성이 크지 않을 때는 이런 방법을 사용하면 됩니다.

 

MainActivity에서 교재에 구현된 SimpleData를 사용하는 코드는 주석처리 했습니다.

 public void onClick(View v) {
  Intent intent = new Intent(getApplicationContext(), AnotherActivity.class);
  //SimpleData data = new SimpleData(100, "Hello Android!" );
  //intent.putExtra(KEY_SIMPLE_DATA, data );
  intent.putExtra("number", 200);
  intent.putExtra("string", "Do it!");
  startActivity(intent);
 }

 

 

여기서 부터는 AnotherActivity 입니다.

public class AnotherActivity extends Activity {

 public static final String KEY_SIMPLE_DATA = "data";
 
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);

  Bundle bundle = getIntent().getExtras();
//  SimpleData data = (SimpleData)bundle.getParcelable(KEY_SIMPLE_DATA );
//  Toast.makeText(this, "Number : " + data.getNumber() + "\nMessage : " +
//            data.getMessage(), Toast.LENGTH_LONG).show();

  Toast.makeText(this, "Number : " + bundle.getInt("number") + "\nMessage : " +
            bundle.getString("string"), Toast.LENGTH_LONG).show();
 }


 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater().inflate(R.menu.main, menu);
  return true;
 }

}

 

 

블로그 이미지

NanoSoft

국립금오공과대학교 컴퓨터공학과

카테고리

강의 전체보기 (166)
2004년 (0)
2005년 (0)
2006년 (0)
2007년 (0)
2008년 (0)
2009년 (0)
2010년 (0)
2011년 (0)
2012년 1학기 (4)
2012년 여름학기 (6)
2012년 2학기 (48)
2013년 1학기 (40)
2013년 여름학기 (0)
2013년 2학기 (57)
C프로그래밍프로젝트 (25)
객체지향프로그래밍응용 (14)
스마트앱프로그래밍 (12)
안드로이드프로그래밍응용 (4)
데이터베이스(평생교육원) (2)
2013년 겨울학기 (2)
2014년 2학기 (1)
2015년 겨울학기 (8)
2019년 2학기 (0)