Search

'Programming/안드로이드'에 해당되는 글 15건

  1. 2011.01.06 Android - ListView / Custom ListView
  2. 2010.12.25 android - scrollview
  3. 2010.09.19 Android 개발 환경 설치

Android - ListView / Custom ListView

Programming/안드로이드 2011.01.06 23:31 Posted by 파란크리스마스
ListView 제어를 MVC 모델처럼 BaseAdapter 의 getCount, getView, getItem을 구현하여
List를 보여주는 예제입니다.

ListViewTest.java

ListView를 listview 로 생성하여
BaseAdapter 상속 받아서 구현한 ArrayAdapterExample 객체를
listview.setAdapter()호출하여 listview의 adapter로 설정합니다.
package com.shryu.test;

import android.app.Activity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;

public class ListViewTest extends Activity implements OnClickListener {
	
  private TextView text; 

  private ArrayAdapterExample adapter;
	
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //setContentView(R.layout.main);
    
    LayoutInflater inflate = LayoutInflater.from(this);
    LinearLayout layout = (LinearLayout)inflate.inflate(R.layout.main, null);
    this.setContentView(layout); 
    
    text = (TextView)findViewById(R.id.TextView02); 
    
    ListView listview = new ListView(this);
    listview.setLayoutParams(new LinearLayout.LayoutParams(
    		LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT)); 
    layout.addView(listview);
    
    adapter = new ArrayAdapterExample(this, R.layout.list_item_1);
    listview.setAdapter(adapter);
  }

  @Override
  public void onClick(View v) {
    Button btn = (Button)v;
    text.setText(btn.getText());
  }
}
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView
    android:id="@+id/TextView02"  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
</LinearLayout>
ArrayAdapterExample.java
package com.shryu.test;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.Filter;
import android.widget.Filterable;
import android.widget.TextView;

public class ArrayAdapterExample extends BaseAdapter implements Filterable {

	private Context mContext; 
	private int mFieldId = 0;

	public ArrayAdapterExample(Context context, int textViewResourceId) {
		super();
		mContext = context;
		mFieldId = textViewResourceId;
	}

	@Override
	public int getCount() {
		return 100;
	}

	@Override
	public Object getItem(int position) {
		String result = new String(position+"");
		return result;
	}

	@Override
	public long getItemId(int position) {
		return position;
	}

	@Override
	public View getView(int position, View convertView, ViewGroup parent) {
		View v = convertView; 
		if (v == null) { 
			LayoutInflater vi = LayoutInflater.from(mContext); 
			v = vi.inflate(R.layout.list_item_1, null);
		}
			
		String value = (String)this.getItem(position); 
		if (value != null) { 
			TextView tt = (TextView) v.findViewById(R.id.TextView01);  
			tt.setText("position = " + value);                        
			Button btn = (Button) v.findViewById(R.id.Button01);  
			btn.setText(value + " 선택"); 
			btn.setOnClickListener((OnClickListener)mContext);    
		}
		return v; 
	}

	@Override
	public Filter getFilter() {
		return null;
	}
}
list_item_1.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
	xmlns:android="http://schemas.android.com/apk/res/android"
	android:layout_width="fill_parent"
	android:layout_height="fill_parent">
<TextView android:text="@+id/TextView01" 
	android:id="@+id/TextView01"
	android:layout_width="wrap_content" 
	android:layout_height="wrap_content"/>
<Button android:text="@+id/Button01" 
	android:id="@+id/Button01"
	android:layout_width="wrap_content" 
	android:layout_height="30px"/>
</LinearLayout>
-end-

android - scrollview

Programming/안드로이드 2010.12.25 18:16 Posted by 파란크리스마스

출처 : http://tigerwoods.tistory.com/12
http://vulpecula.tistory.com/3
http://nashorn.tistory.com/74
http://blog.vizpei.kr/94697746
http://www.jopenbusiness.com/tc/oss/entry/Android-ScrollView%EB%A1%9C-%ED%99%94%EB%A9%B4-%EC%8A%A4%ED%81%AC%EB%A1%A4-%EC%B2%98%EB%A6%AC
http://songdroid.blogspot.com/2009/12/linearlayout.html



main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
</LinearLayout>
ScrollViewTest.java

package com.shryu.test;

import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;
import android.widget.RelativeLayout;
import android.widget.ScrollView;
import android.widget.TextView;

public class ScrollViewTest extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.main);
        LayoutInflater inflate = LayoutInflater.from(this);
        LinearLayout layout = (LinearLayout)inflate.inflate(R.layout.main, null);
        this.setContentView(layout);
        
        //
        ScrollView sv = new ScrollView(this);
        sv.setLayoutParams(new RelativeLayout.LayoutParams(
             LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
        layout.addView(sv);
        
        LinearLayout subLayout = new LinearLayout(this);
        subLayout.setLayoutParams(new LinearLayout.LayoutParams(
        		LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT, 1.0f));
        subLayout.setOrientation(LinearLayout.VERTICAL);
        subLayout.setPadding(0, 0, 5, 0);
        sv.addView(subLayout);
        
        for (int i=0; i<20; i++) {
          TextView aa = new TextView(this);
          aa.setBackgroundColor(Color.BLUE);
          aa.setText("blue - " + i);
          subLayout.addView(aa);
         
          TextView aa2 = new TextView(this);
          aa2.setBackgroundColor(Color.BLACK);
          aa2.setText("black - " + i);
          subLayout.addView(aa2);
        }
    }
}

 

Android 개발 환경 설치

Programming/안드로이드 2010.09.19 22:01 Posted by 파란크리스마스

출처
http://heny2kawmi.tistory.com/4
http://heny2kawmi.tistory.com/77

다운로드

1. Eclipse 압축풀기

eclipse-java-helios-win32.zip

C:\Android\eclipse 폴더로 압축을 푼다.

2. Eclipse의 실행할 JDK 설정(옵션)

C:\Android\eclipse\eclipse.ini 파일의 상단에 아래의 내용을 추가 한다.

-vm
C:/Android/jdk1.6.0_16/bin/javaw.exe

3. Android SDK 압축풀기

android-sdk_r07-windows.zip

C:\Android\android-sdk-windows 폴더로 압축을 푼다.

4. 환경변수 추가

Path 에 C:\Android\android-sdk-windows\tools 폴더 추가

5. Eclipse용 ADT(Android Development Tools) 플러그인 설치

5.1 Eclipse을 실행한다.

5.2 메뉴 [Help] > [Install New Software...]을 선택한다.



5.3 버튼 [Add...] 선택한다.



5.4 Add Repository 내용 입력

Name : ADT Plugin
Location : https://dl-ssl.google.com/android/eclipse

보안상 접속이 되지 않는 경우 : http://dl-ssl.google.com/android/eclipse 다시 시도 해본다.



5.5 Android DDMS, Android Development Tools 선택하고 버튼 [Next >]을 선택한다.



5.6 버튼 [Next >]을 선택한다.



5.7 라이센스 확인하고  버튼 [Finish]을 선택한다.



5.8 플러그인이 설치가 완료 되면 Eclipse 제시작한다.

6. Eclipse에서 Android SDK 경로 설정

6.1 Eclispe의 메뉴 [Window] > [Preferences]을 선택한다.

6.2 트리에서 [Android]를 선택한다.

6.3 버튼 [Browse...] 선택한다.



6.4 Android SDK가 설치된 경로를 선택한다.



6.5 버튼 [OK선택한다.

7. Android SDK의 Available Packages 설치 하기

7.1 Eclipse의 메뉴 [Window] > [Android SDK and AVD Manager]을 선택한다.



7.2 라이센스등의 하고 버튼 [Install]을 선택한다.



7.3 버튼 [Close]을 선택한다.



7.4 [Virtual Devices] 선택한다.



7.5 버튼 [New]을 선택한다.



7.6 위와 같이 입력한다.



7.7 추가된 [Hello_Android]을 선택하고 버튼 [Start...]을 선택한다.



7.8 버튼 [Launch]을 선택한다.

8. 실행된 Android 에뮬레이터 화면

- end -