결과화면

 

//values 폴더에 style.xml 에 다음 소스코드를 추가한다....

 

<style name="big_red_font">
        <item name="android:textColor">#ff0000</item>
        <item name="android:textSize">25sp</item>
    </style>

 

 

//MainActivity.java

 

package com.example.widgetdemo1;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.style_demo);
 }

}

 

//style_demo.xml

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        style="@style/big_red_font"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="스타일 big_red_font 적용" />
   
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="스타일 미적용" />

</LinearLayout>

 

 

theme(테마) 적용

1. style.xml에 소스코드 추가하고

2. Manifest에 추가한다.   ===>>>   <activity

 android:theme="@string/mytheme"

 

 

 

 결과화면

//SlidingDemo.java

 

 package com.example.widgetdemo1;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.SlidingDrawer;
import android.widget.Toast;

public class SlidingDemo extends Activity {
 private SlidingDrawer drawer;
 private static final String TAG = "SlidingDemo";

 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.sliding1);
  drawer = (SlidingDrawer)findViewById(R.id.slidingdrawer);
  
  drawer.setOnDrawerCloseListener(new SlidingDrawer.OnDrawerCloseListener() {
   
   @Override
   public void onDrawerClosed() {
    Log.i(TAG, "DrawerClose");
    Toast.makeText(SlidingDemo.this, "DrawerClose", Toast.LENGTH_SHORT).show();
   }
  });
  
  drawer.setOnDrawerOpenListener(new SlidingDrawer.OnDrawerOpenListener() {
   
   @Override
   public void onDrawerOpened() {
    Log.i(TAG, "DrawerOpen");
    Toast.makeText(SlidingDemo.this, "DrawerOpen", Toast.LENGTH_SHORT).show();
   }
  });
  
  drawer.setOnDrawerScrollListener(new SlidingDrawer.OnDrawerScrollListener() {
   
   @Override
   public void onScrollStarted() {
    Log.i(TAG, "onScrollStarted");
    Toast.makeText(SlidingDemo.this, "onScrollStarted", Toast.LENGTH_SHORT).show();
   }
   
   @Override
   public void onScrollEnded() {
    Log.i(TAG, "onScrollEnded");
    Toast.makeText(SlidingDemo.this, "onScrollEnded", Toast.LENGTH_SHORT).show();
   }
  });
 }
}

 

 //sliding1.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">
 <SlidingDrawer
     android:id="@+id/slidingdrawer"
     android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:content="@+id/content"
  android:handle="@+id/handle"
  android:orientation="vertical" > 
 <Button android:id="@+id/handle"        
   android:layout_width="wrap_content"
   android:layout_height="50dp"
   android:text="위로"/>
  <LinearLayout
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:background="#000000"
  android:id="@+id/content"
  >
  <TextView
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:textStyle="bold"
   android:background="#FFFFFF00"
   android:text="이것은 슬라이딩드로어 입니다."
  />
  </LinearLayout>
  </SlidingDrawer>
</LinearLayout>

 

'2020년도 이전 > [WebSig] Android' 카테고리의 다른 글

style(스타일) 적용 및 theme(테마) 적용  (0) 2013.08.16
이클립스에서 logcat이 안보인다면?  (0) 2013.08.16
Flipper Demo - 뷰플리퍼  (0) 2013.08.16
GridView Demo  (0) 2013.08.14
ExpandableList ViewDemo  (0) 2013.08.14

결과화면

 

 package com.example.widgetdemo1;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ViewFlipper;

public class FlipperDemo extends Activity implements View.OnClickListener {
 Button prev, next;
 ViewFlipper flipper;

 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.flipperdemo_1);
  
  flipper = (ViewFlipper)findViewById(R.id.flipper);
  prev = (Button)findViewById(R.id.prev);
  next = (Button)findViewById(R.id.next);
  
  prev.setOnClickListener(this);
  next.setOnClickListener(this);
 }
 
 @Override
 public void onClick(View v){
  //prev 버튼이 클릭되었을 때
  if(v == prev){
   flipper.showPrevious();    
  } else if(v == next){
   flipper.showNext();
  }
 }
}

 

 

 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
   
    <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >
   
    <Button
        android:id="@+id/prev"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="이전"/>

    <Button
        android:id="@+id/next"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="다음"/>
    </LinearLayout>
   
    <ViewFlipper
        android:id="@+id/flipper"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
   
    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="RED"
        android:background="#ff0000" />
   
    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="GREEN"
        android:background="#00ff00" />
   
    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="BLUE"
        android:background="#0000ff" />
    </ViewFlipper>

</LinearLayout>

 

'2020년도 이전 > [WebSig] Android' 카테고리의 다른 글

이클립스에서 logcat이 안보인다면?  (0) 2013.08.16
Sliding Demo - 슬라이딩드로어  (0) 2013.08.16
GridView Demo  (0) 2013.08.14
ExpandableList ViewDemo  (0) 2013.08.14
ListView Demo5  (0) 2013.08.14

결과화면

 

 

//GridViewDemo.java

 

package com.example.containerdemo;

import java.util.List;

import android.app.Activity;
import android.content.Intent;
import android.content.pm.ResolveInfo;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;

public class GridViewDemo extends Activity {
 GridView mGrid;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  loadApps();
  setContentView(R.layout.gridviewdemo);
  mGrid = (GridView)findViewById(R.id.myGrid);
  mGrid.setAdapter(new AppsAdapter());  
 }
 
 private List<ResolveInfo> mApps;
 
 private void loadApps(){
  Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
  mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
  
  mApps = getPackageManager().queryIntentActivities(mainIntent, 0);
 }
 
 public class AppsAdapter extends BaseAdapter{
  public AppsAdapter(){
   
  }
  
  public View getView(int position, View convertView, ViewGroup parent){
   ImageView i;
   
   if(convertView == null){
    i = new ImageView(GridViewDemo.this);
    i.setScaleType(ImageView.ScaleType.FIT_CENTER);
    i.setLayoutParams(new GridView.LayoutParams(50,50));
   } else {
    i = (ImageView)convertView;
   }
   
   ResolveInfo info = mApps.get(position);
   i.setImageDrawable(info.activityInfo.loadIcon(getPackageManager()));
   return i;
  }
  
  public final int getCount(){
   return mApps.size();
  }
  
  public final Object getItem(int position){
   return mApps.get(position);   
  }
  
  public final long getItemId(int position){
   return position;   
  }
 }

}

 

 

//gridviewdemo.xml

 

<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="10dp"
    android:verticalSpacing="10dp"
    android:horizontalSpacing="10dp"
    android:numColumns="auto_fit"
    android:columnWidth="60dp"
    android:stretchMode="columnWidth"
    android:gravity="center"
    android:id="@+id/myGrid"/>

 

'2020년도 이전 > [WebSig] Android' 카테고리의 다른 글

Sliding Demo - 슬라이딩드로어  (0) 2013.08.16
Flipper Demo - 뷰플리퍼  (0) 2013.08.16
ExpandableList ViewDemo  (0) 2013.08.14
ListView Demo5  (0) 2013.08.14
ListView Demo3 - 리스트 추가, 삭제  (0) 2013.08.14

결과화면

//ExpandableListViewDemo.java

 

 package com.example.containerdemo;
import android.app.ExpandableListActivity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.Gravity;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.ContextMenu.ContextMenuInfo;
import android.widget.AbsListView;
import android.widget.BaseExpandableListAdapter;
import android.widget.ExpandableListAdapter;
import android.widget.ExpandableListView;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.ExpandableListView.ExpandableListContextMenuInfo;

public class ExpandableListViewDemo extends ExpandableListActivity{
     ExpandableListAdapter mAdapter;
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);

         // Set up our adapter
         mAdapter = new MyExpandableListAdapter();
         setListAdapter(mAdapter);
         registerForContextMenu(getExpandableListView());
     }

     @Override
     public void onCreateContextMenu(ContextMenu menu, View v,
       ContextMenuInfo menuInfo) {
         menu.setHeaderTitle("Sample menu");
         menu.add(0, 0, 0, R.string.list_sample_action);
     }
    
     @Override
     public boolean onContextItemSelected(MenuItem item) {
         ExpandableListContextMenuInfo info =
           (ExpandableListContextMenuInfo) item.getMenuInfo();

         String title =
           ((TextView) info.targetView).getText().toString();
        
         int type = ExpandableListView.getPackedPositionType(
           info.packedPosition);
         if (type == ExpandableListView.PACKED_POSITION_TYPE_CHILD) {
             int groupPos =
              ExpandableListView.getPackedPositionGroup(info.packedPosition);
             int childPos =
              ExpandableListView.getPackedPositionChild(info.packedPosition);
             Toast.makeText(this, title + ": Child " + childPos +
              " clicked in group " + groupPos, Toast.LENGTH_SHORT).show();
             return true;
         } else if (type == ExpandableListView.PACKED_POSITION_TYPE_GROUP) {
             int groupPos =
             ExpandableListView.getPackedPositionGroup(info.packedPosition);
             Toast.makeText(this, title + ": Group " + groupPos + " clicked",
               Toast.LENGTH_SHORT).show();
             return true;
         }
        
         return false;
     }

     
    
    
     public class MyExpandableListAdapter extends BaseExpandableListAdapter {
         // Sample data set.  children[i] contains the children (String[]) for groups[i].
         private String[] groups = { "People Names", "Dog Names", "Cat Names", "Fish Names" };
         private String[][] children = {
                 { "Arnold", "Barry", "Chuck", "David" },
                 { "Ace", "Bandit", "Cha-Cha", "Deuce" },
                 { "Fluffy", "Snuggles" },
                 { "Goldy", "Bubbles" }
         };
        
         public Object getChild(int groupPosition, int childPosition) {
             return children[groupPosition][childPosition];
         }

         public long getChildId(int groupPosition, int childPosition) {
             return childPosition;
         }

         public int getChildrenCount(int groupPosition) {
             return children[groupPosition].length;
         }

         public TextView getGenericView() {
             // Layout parameters for the ExpandableListView
             AbsListView.LayoutParams lp = new AbsListView.LayoutParams(
                     ViewGroup.LayoutParams.MATCH_PARENT, 64);

             TextView textView = new TextView(ExpandableListViewDemo.this);
             textView.setLayoutParams(lp);
             // Center the text vertically
             textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
             // Set the text starting position
             textView.setPadding(36, 0, 0, 0);
             return textView;
         }
        
         public View getChildView(int groupPosition, int childPosition, boolean isLastChild,
                 View convertView, ViewGroup parent) {
             TextView textView = getGenericView();
             textView.setText(getChild(groupPosition, childPosition).toString());
             return textView;
         }

         public Object getGroup(int groupPosition) {
             return groups[groupPosition];
         }

         public int getGroupCount() {
             return groups.length;
         }

         public long getGroupId(int groupPosition) {
             return groupPosition;
         }

         public View getGroupView(int groupPosition, boolean isExpanded, View convertView,
                 ViewGroup parent) {
             TextView textView = getGenericView();
             textView.setText(getGroup(groupPosition).toString());
             return textView;
         }

         public boolean isChildSelectable(int groupPosition, int childPosition) {
             return true;
         }

         public boolean hasStableIds() {
             return true;
         }

     }
 }

 

 

 

//values폴더의 string.xml에 다음 코드 추가....

 

 <string name="list_sample_action">Sample action</string>

 

'2020년도 이전 > [WebSig] Android' 카테고리의 다른 글

Flipper Demo - 뷰플리퍼  (0) 2013.08.16
GridView Demo  (0) 2013.08.14
ListView Demo5  (0) 2013.08.14
ListView Demo3 - 리스트 추가, 삭제  (0) 2013.08.14
ListView Demo2 - extends ListActivity 이용...  (0) 2013.08.14

결과화면

//ListViewDemo5.java

 

package com.example.containerdemo;

import java.util.ArrayList;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

public class ListViewDemo5 extends Activity {
 ArrayList<MyItem> arItem;

 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.list5);

  arItem = new ArrayList<MyItem>();
  MyItem mi;
  mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북");
  arItem.add(mi);
  mi = new MyItem(R.drawable.ic_launcher, "LG 노트북");
  arItem.add(mi);
  mi = new MyItem(R.drawable.ic_launcher, "HP 노트북");
  arItem.add(mi);

  MyListAdapter MyAdapter = new MyListAdapter(this, R.layout.row2, arItem);

  ListView MyList;
  MyList = (ListView) findViewById(R.id.list);
  MyList.setAdapter(MyAdapter);
 }
}

// 리스트 뷰에 출력할 항목
class MyItem {
 MyItem(int aIcon, String aName) {
  Icon = aIcon;
  Name = aName;
 }

 int Icon;
 String Name;
}

// 어댑터 클래스
class MyListAdapter extends BaseAdapter {
 Context maincon;
 LayoutInflater Inflater;
 ArrayList<MyItem> arSrc;
 int layout;

 public MyListAdapter(Context context, int alayout, ArrayList<MyItem> aarSrc) {
  maincon = context;
  Inflater = (LayoutInflater) context
    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
  arSrc = aarSrc;
  layout = alayout;
 }

 public int getCount() {
  return arSrc.size();
 }

 public String getItem(int position) {
  return arSrc.get(position).Name;
 }

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

 // 각 항목의 뷰 생성
 public View getView(int position, View convertView, ViewGroup parent) {
  final int pos = position;
  if (convertView == null) {
   convertView = Inflater.inflate(layout, parent, false);
  }
  ImageView img = (ImageView) convertView.findViewById(R.id.img);
  img.setImageResource(arSrc.get(position).Icon);

  TextView txt = (TextView) convertView.findViewById(R.id.text);
  txt.setText(arSrc.get(position).Name);

  Button btn = (Button) convertView.findViewById(R.id.btn);
  btn.setOnClickListener(new Button.OnClickListener() {
   public void onClick(View v) {
    String str = arSrc.get(pos).Name + "를 주문합니다.";
    Toast.makeText(maincon, str, Toast.LENGTH_SHORT).show();
   }
  });

  return convertView;
 }
}

 

 

 

// row.xml

 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="60dip"
 android:padding="5dip">
 <ImageView
  android:id="@+id/img"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_centerVertical="true"
  android:layout_alignParentLeft="true" />
 <TextView
  android:id="@+id/text"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:textColor="#00ff00"
  android:textSize="26sp"
  android:layout_centerVertical="true"
  android:layout_toRightOf="@id/img" />
 <Button
  android:id="@+id/btn"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_centerVertical="true"
  android:layout_alignParentRight="true"
  android:text="주문" />
</RelativeLayout>

 

 

 

 

//list5.xml

 

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
   
<ListView
 android:id="@+id/list" 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
 />
</LinearLayout>

 

 

'2020년도 이전 > [WebSig] Android' 카테고리의 다른 글

GridView Demo  (0) 2013.08.14
ExpandableList ViewDemo  (0) 2013.08.14
ListView Demo3 - 리스트 추가, 삭제  (0) 2013.08.14
ListView Demo2 - extends ListActivity 이용...  (0) 2013.08.14
ListView Demo1  (0) 2013.08.14

결과화면 

 

package com.example.containerdemo;

import java.util.ArrayList;
import java.util.Arrays;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;

public class ListViewDemo3 extends Activity {
 Button add, delete;
 ListView listview;
 EditText item_name;
 ArrayAdapter<String> adapter;
 int deletePos = -1;;
 TextView message;
 ArrayList<String> alist;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.listviewdemo_3);

  add = (Button)findViewById(R.id.add);
  message = (TextView)findViewById(R.id.message);
  delete = (Button)findViewById(R.id.delete);
  listview = (ListView)findViewById(R.id.listview1);
  item_name = (EditText)findViewById(R.id.item_name);

  alist = new ArrayList<String>();
  alist.addAll(Arrays.asList(getResources().getStringArray(R.array.phone)));

  adapter = new ArrayAdapter<String>
  (this, android.R.layout.simple_list_item_1, alist);

  listview.setAdapter(adapter);

  add.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View v) {
    alist.add(0, item_name.getText().toString());
    adapter.notifyDataSetChanged();
   }
  });

  delete.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View v) {
    if(deletePos == -1){
     message.setText("삭제할 Item(항목)을 선택하세요.");
    } else {
     alist.remove(deletePos);
     adapter.notifyDataSetChanged();
     message.setText("");
    }
   }
  });

  listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
   @Override
   public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
    deletePos = position;
    message.setText(alist.get(position) + "를 삭제하시겠습니까?");
   }
  });
 }
}

 

 

 

 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/message"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="ListView에 추가할 항목 : " />

    <EditText
        android:id="@+id/item_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

    <Button
        android:id="@+id/add"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="추가" />

    <Button
        android:id="@+id/delete"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="삭제" />

    <ListView
        android:id="@+id/listview1"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</LinearLayout>

 

 

 

 

//values폴더에 arrays.xml 생성

 

 

 <?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="phone">
        <item>Iphone4</item>
        <item>Iphone4s</item>
        <item>Iphone5</item>
        <item>Iphone5s</item>
        <item>Iphone5c</item>
        <item>galaxy S</item>
        <item>galaxy S2</item>
        <item>galaxy S2 HD</item>
        <item>galaxy S3 3G</item>
        <item>galaxy S3 LTE</item>
        <item>galaxy S4</item>
        <item>galaxy S4 LTE-A</item>
        <item>vega R3</item>
        <item>vega IRON</item>
        <item>vega LTE-A</item>
        <item>optimus G</item>
        <item>optimus G PRO</item>
        <item>optimus GK</item>
        <item>G2</item>
    </string-array>
</resources>

 

'2020년도 이전 > [WebSig] Android' 카테고리의 다른 글

ExpandableList ViewDemo  (0) 2013.08.14
ListView Demo5  (0) 2013.08.14
ListView Demo2 - extends ListActivity 이용...  (0) 2013.08.14
ListView Demo1  (0) 2013.08.14
HScrollView Demo  (0) 2013.08.14

+ Recent posts