PDA

View Full Version : رفتن از یک اکتیویتی به اکتیویتی دیگر



ahmad1990
پنج شنبه 12 آبان 1390, 14:42 عصر
سلام
چجوری میشه از یک activity به activity دیگه رفت؟
این دوتا activity کلا تو دوتا package جدا هستن!

powerboy2988
پنج شنبه 12 آبان 1390, 17:51 عصر
شما از هر Activity بخوای به یک Activity دیگه بری از کد زیر استفاده می کنی :


Intent editActivityIntent = new Intent(this, UpdatePhone.class);
startActivityForResult(editActivityIntent, 0);


که کلاس UpdatePhone شما تو یک package دیگه ای هست..

ahmad1990
شنبه 14 آبان 1390, 09:19 صبح
ممنون این مشکل حل شده یه جوری اما وقتی میخوام به یه activity برم این error رو میده:
11-05 09:26:02.243: E/AndroidRuntime(4875): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.saba/sama.framework.app.transparentPortlet.TransparentF ormPortlet}: java.lang.InstantiationException: sama.framework.app.transparentPortlet.TransparentF ormPortlet

مرسی از کمکت....

ahmad1990
شنبه 14 آبان 1390, 13:38 عصر
دوستان اگه کسی میدونه که چطور میشه از یک اکتیویتی به یکی دیگه رفت در حالی که دومی یک یا چنتا سازنده دارند و لازم داریم که در زمان startActivity هر کدومو لازم داشتیم بتونیم new کنیم!
حالا اگه کسی ایده ای داره ممنون میشم کمک کنه. با تشکر....

powerboy2988
شنبه 14 آبان 1390, 15:13 عصر
شما مشکل Portlet داری!!! نه Activity!!!

ahmad1990
شنبه 14 آبان 1390, 15:27 عصر
یکم پیچیدس!!!!
من دارم یک کلاس رو از یک activity صدا میزنم که این کلاس به طور سلسله مراتبی از چند کلاس دیگه ارث برده و در نهایت کلاس آخر از activity اما تو این کلاس من یک سازنده هستش که می خوام وقتی از activity خودم صداش می زنم ، درست بشه. حالا این error رو میده. حالا مشکل چجوری حل میشه؟

این کد کلاسی که میخوام از activity خودم صداش بزنم.

package sama.framework.app.transparentPortlet;

import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcelable;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

import com.saba.R;

import exir.pageManager.ExirFormPageHolder;

public class TransparentFormPortlet extends TransparentPortlet implements OnClickListener {

public TransparentFormPortlet(ExirFormPageHolder exirFormPageHolder) {
super(exirFormPageHolder);
}

protected static boolean hasLowMemory;
protected short[] title;
Button btn_ok, btn_exit;

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.test);
init();
}

private void init() {
btn_ok = (Button) findViewById(R.id.btn_ok);
btn_exit = (Button) findViewById(R.id.btn_exit);
btn_exit.setOnClickListener(this);
btn_ok.setOnClickListener(this);
}

@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_exit:
System.exit(1);
break;
case R.id.btn_ok:
btn_ok.setText("you pressed ok!");
break;
default:
break;
}
}

}

اینم کد activity خودم:

package com.saba;

import sama.framework.app.AppViewer;
import sama.framework.app.Application;
import sama.framework.multilang.LM;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class TestSabaAndroidActivity extends Activity implements OnClickListener {

public static Activity myActivity;
public static Context myContext;
Button btn;

protected void onCreate(Bundle savedInstanceState) {
// ----------------------------------------------------------------------------
myActivity = this;
myContext = this;
Application.instance = new Application();
AppViewer.instance = new AppViewer();
// ----------------------------------------------------------------------------
super.onCreate(savedInstanceState);
System.out.println("saba..............saba");
setContentView(R.layout.main);
LM.setLang(LM.Farsi);
init();
int systemId = 99;
String wPath = "/assets/sabatest/mytehran/systems/s" + systemId + "/w" + systemId + ".xml";
String pPath = "/assets/sabatest/mytehran/systems/s" + systemId + "/p" + systemId + ".xml";
String dPath = "/assets/sabatest/mytehran/systems/s" + systemId + "/d" + systemId + ".xml";
// String fPath = "/test/mytehran/systems/s" + systemId + "/f" +
// systemId + ".xml";
// ExirWorkflowEngine engine = ExirWorkflowEngine.createInstance(wPath,
// pPath, null, dPath);
// engine.runState(0, null);
}

private void init() {
btn = (Button) findViewById(R.id.button1);
btn.setOnClickListener(this);
}

private void go() {
Intent i = new Intent();
// i.setClassName("com.saba",
// "exir.xml.A"/*"sama.framework.app.transparentPortlet.TransparentF ormPortlet"*/);
startActivity(new Intent(this, /*exir.xml.A.class*/sama.framework.app.transparentPortlet.TransparentF ormPortlet.class));
// startActivity(new Intent(this, exir.xml.A.class));
}

@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1:
go();
break;

default:
break;
}
}

}

hamid_hr
یک شنبه 11 تیر 1391, 10:32 صبح
سلام .....
من برای رفتن به Activity بعدی از این کد استفاده می کنم.


Intent intent = new Intent(MultiActivityActivity.this, NextActivity.class);
startActivity(intent);


ولی برنامه که اجرا می شه وقتی buttom رو کلیک می کنم از برنامه خارج میشه.