想不到android开发,这么痛苦..
额就需要一个简单的功能,同一个包里,一个窗口(activtity)调到另一个窗口(activtity),
就像delphi里的loginForm.show;一句就行了.
可Eclipse确要一堆的代码,而且自己还是按书上来的,但竟然报错?高人请帮分析下,谢了.本人环境:
Eclipse 3.7
ADT 20
android 3.0代码如下(就2个文件):1.AndroidManifest.xml<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.roboschool"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk
android:minSdkVersion="11" android:targetSdkVersion="15" />
<uses-permission android:name="android.permission.INSTALL_PACKAGES" /> <application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".Main"
android:label="@string/title_activity_login" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Login"
android:label="@string/title_activity_main" > </activity>
</application></manifest>2.activity_login.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/bg" > <Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/editText1"
android:layout_alignTop="@+id/editText4"
android:layout_marginLeft="25dp"
android:layout_toRightOf="@+id/editText4"
android:text="Login" />
</RelativeLayout>3.login.javapackage com.example.roboschool;import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Button;
import android.support.v4.app.NavUtils;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;public class Login extends Activity {
private Button btn; @Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
/*Button but=(Button)super.findViewById(R.id.button1);
but.setText("Welcome back!");*/
this.btn=(Button)super.findViewById(R.id.button1);
this.btn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
Intent it=new Intent(Login.this, Main.class);
Login.this.startActivity(it);
}
});
}
4.activity_main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"> <ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="86dp"
android:layout_marginTop="66dp"
android:background="@drawable/icon1" /></RelativeLayout>5.main.javapackage com.example.roboschool;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;import android.app.Activity;
import android.view.Menu;
public class Main extends Activity {
private Button mybut=null; @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button mybut=(Button)super.findViewById(R.id.imageButton1); //出错的行,说找不到对象,我晕.真有的
this.mybut.setOnClickListener(new OnClickListenerlmpl());
}
private class OnClickListenerlmpl implements OnClickListener
{
@Override
public void onClick(View view)
{
Uri uri=Uri.parse("http://10.0.3.123");
Intent it=new Intent();
it.setAction(Intent.ACTION_VIEW);
it.setData(uri);
Main.this.startActivity(it);
}
} @Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
额就需要一个简单的功能,同一个包里,一个窗口(activtity)调到另一个窗口(activtity),
就像delphi里的loginForm.show;一句就行了.
可Eclipse确要一堆的代码,而且自己还是按书上来的,但竟然报错?高人请帮分析下,谢了.本人环境:
Eclipse 3.7
ADT 20
android 3.0代码如下(就2个文件):1.AndroidManifest.xml<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.roboschool"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk
android:minSdkVersion="11" android:targetSdkVersion="15" />
<uses-permission android:name="android.permission.INSTALL_PACKAGES" /> <application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".Main"
android:label="@string/title_activity_login" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Login"
android:label="@string/title_activity_main" > </activity>
</application></manifest>2.activity_login.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/bg" > <Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/editText1"
android:layout_alignTop="@+id/editText4"
android:layout_marginLeft="25dp"
android:layout_toRightOf="@+id/editText4"
android:text="Login" />
</RelativeLayout>3.login.javapackage com.example.roboschool;import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Button;
import android.support.v4.app.NavUtils;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;public class Login extends Activity {
private Button btn; @Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
/*Button but=(Button)super.findViewById(R.id.button1);
but.setText("Welcome back!");*/
this.btn=(Button)super.findViewById(R.id.button1);
this.btn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
Intent it=new Intent(Login.this, Main.class);
Login.this.startActivity(it);
}
});
}
4.activity_main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"> <ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="86dp"
android:layout_marginTop="66dp"
android:background="@drawable/icon1" /></RelativeLayout>5.main.javapackage com.example.roboschool;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;import android.app.Activity;
import android.view.Menu;
public class Main extends Activity {
private Button mybut=null; @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button mybut=(Button)super.findViewById(R.id.imageButton1); //出错的行,说找不到对象,我晕.真有的
this.mybut.setOnClickListener(new OnClickListenerlmpl());
}
private class OnClickListenerlmpl implements OnClickListener
{
@Override
public void onClick(View view)
{
Uri uri=Uri.parse("http://10.0.3.123");
Intent it=new Intent();
it.setAction(Intent.ACTION_VIEW);
it.setData(uri);
Main.this.startActivity(it);
}
} @Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
Button--->TextView--->View