Android活动中断

时间:2013-04-21 20:59:08

标签: android android-activity onclicklistener

我只是想为一个活动提出一个骨架,这个活动使用ListView作为我班级游戏的新闻源。 在此活动中,只有新闻源和刷新按钮(用最新消息更新ListView)

我的activity_news.xml:

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


<ListView
    android:id="@+id/news"
    android:layout_width="match_parent"
    android:layout_height="320dp"

    >
</ListView>

<Button
    android:layout_width="fill_parent"
    android:layout_height="45dp" 
    android:text="Refresh"
    android:id="@+id/bRef"
/>     

My NewsActivty.java:

package com.example.mynews;

import com.example.mynews.R;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;

public class NewsActivity extends Activity {
Button refresh;
String newsfeed [] = {"latest news", "older news"};
Intent ref = new Intent(this, NewsActivity.class);

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

    refresh = (Button) findViewById(R.id.bRef);

    ListView newsStuff = (ListView) findViewById(R.id.news); 

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

    refresh.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            startActivity(ref); 
        }
    });
}

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

}

我的清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.mynews"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.example.mynews.NewsActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

我逐个构建了所有内容并在完成新内容(布局,数组适配器等)时运行它,并且一旦我添加了OnClickListener(模拟器告诉我“mynews已经不幸停止”),活动就开始破坏了我的刷新按钮。我确信有更好的方法可以完成我想要做的事情,但是到目前为止对我所拥有的任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

你定义了一个类ref.java吗? 如果是,则需要在清单文件中定义该活动(ref)。