各位好:
我想要做一個Android應用,想讓執行畫面像
下圖
[IMG]http://i642.photobucket.com/albums/uu144/
aloha1003/2010-08-06_131638.png[/IMG]

http://i642.photobucket.com/albums/uu144/aloha1003/2010-08-06_131638.png
用GridView排列

我的原始碼是這樣
gc_mob.java
[code]package gc.mob;

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

import android.view.View;
import android.widget.GridView;

import android.widget.AdapterView.*;
import android.widget.Toast;
import android.widget.*;

public class gc_mob extends Activity {
    /** Called when the activity is first created. */
        private GridView gv;


        private String[] items  = {
                        "RSS" , "Album" , "Blog"
        };
        private int[] icons     ={
                        R.drawable.sample_0,
                        R.drawable.sample_1,
                        R.drawable.sample_2
        };
        @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

      gv        =       (GridView) findViewById(R.id.gridview);
        GC_MainGridView gc_adapter      =       new
GC_MainGridView(this,items,icons);
        gv.setAdapter(gc_adapter);





        gv.setOnItemClickListener(new OnItemClickListener(){
                public void onItemClick(AdapterView<?> parent,View v,int
position , long id){
                        Toast.makeText(gc_mob.this, "" + position,
Toast.LENGTH_SHORT).show();
                }
        });

    }

}[/code]
main.xml
[code]<GridView xmlns:android="http://schemas.android.com/apk/res/
android"
    android:id="@+id/gridview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:columnWidth="90dp"
    android:numColumns="auto_fit"
    android:verticalSpacing="10dp"
    android:horizontalSpacing="10dp"
    android:stretchMode="columnWidth"
    android:gravity="center"
>

<ImageView android:layout_width="wrap_content"
android:layout_height="wrap_content" android:id="@+id/icon"></
ImageView>


<TextView android:text="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:id="@+id/text"></
TextView>
</GridView>[/code]

GC_MainGridView.java
[code]package gc.mob;

import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.content.*;
import android.widget.*;
public class GC_MainGridView extends BaseAdapter {

        private Context _con;
        private String[]        _items;
        private int[]   _icons;
        public GC_MainGridView(Context con, String[] items, int[] icons)
        {
                _con    =       con;
                _items  =       items;
                _icons  =       icons;
        }
        @Override
        public int getCount() {
                // TODO Auto-generated method stub
                return _icons.length;
        }

        @Override
        public Object getItem(int position) {
                // TODO Auto-generated method stub
                return _icons[position];
        }

        @Override
        public long getItemId(int position) {
                // TODO Auto-generated method stub
                return position;
        }

        @Override
        public View getView(int position, View v, ViewGroup parent) {
                // TODO Auto-generated method stub
                ImageView imageView;

        if (v == null) {  // if it's not recycled, initialize some
attributes
            imageView = new ImageView(_con);
                ImageView iv = (ImageView) imageView.findViewById(R.id.icon);
                TextView tv     =       (TextView) 
imageView.findViewById(R.id.text);

            iv.setImageResource(_icons[position]);
                tv.setText(_items[position]);
        }else {
            imageView = (ImageView) v;
        }
                return imageView;
        }

}
[/code]


可是拿去給模擬器執行的時候
都會出現 gc_android(程序:gc.mob)異常終止,請再試一次的錯誤訊息

開Debug模式,它提供給我的訊息是
Thread [<1> main] (Suspended (exception RuntimeException))
        ActivityThread.performLaunchActivity(ActivityThread$ActivityRecord,
Intent) line: 2663
        ActivityThread.handleLaunchActivity(ActivityThread$ActivityRecord,
Intent) line: 2679
        ActivityThread.access$2300(ActivityThread, ActivityThread
$ActivityRecord, Intent) line: 125
        ActivityThread$H.handleMessage(Message) line: 2033
        ActivityThread$H(Handler).dispatchMessage(Message) line: 99
        Looper.loop() line: 123
        ActivityThread.main(String[]) line: 4627
        Method.invokeNative(Object, Object[], Class, Class[], Class, int,
boolean) line: not available [native method]
        Method.invoke(Object, Object...) line: 521
        ZygoteInit$MethodAndArgsCaller.run() line: 868
        ZygoteInit.main(String[]) line: 626
        NativeStart.main(String[]) line: not available [native method]

Source not found.
請問我該怎麼解決
謝謝

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to