Отдельный экран отображается вместо табота в затмении Android
я self_learner для Android.
У меня есть два экрана. Первый экран содержит один текст редактирования и кнопку, текст редактирования предназначен для получения ввода от пользователя, а кнопка - для вызова действия tabhost, которое находится на втором экране.
Во время выполнения после получения ввода от пользователя должны отображаться соответствующие значения(as per the user's input) к любой из вкладок вкладки, которая находится на втором экране.
Но здесь моя проблема в том, что он показывает ответ на отдельном экране, а не в формате tabhost.
NOTE: В приведенном ниже коде я предполагаю, что проблема заключается только в использовании общего предпочтения для хранения и отображения данных в tabhost. Пожалуйста, кто-нибудь может мне помочь?
Пожалуйста, найдите код ниже
Demo_tabActivity.java
public class Demo_tabActivity extends Activity
{
private static String NAMESPACE = "http://tempuri.org/";
private static String METHOD_NAME = "FahrenheitToCelsius";
private static String SOAP_ACTION = "http://tempuri.org/FahrenheitToCelsius";
private static String URL = "http://www.w3schools.com/webservices/tempconvert.asmx?WSDL";
Button btnFar;
EditText txtFar,txtshow;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
txtFar = (EditText)findViewById(R.id.editText_in);
btnFar = (Button)findViewById(R.id.button1);
btnFar.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
String b;
//Initialize soap request + add parameters
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
//Use this to add parameters
request.addProperty("Fahrenheit",txtFar.getText().toString());
//Declare the version of the SOAP request
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.setOutputSoapObject(request);
envelope.dotNet = true;
try
{
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
//this is the actual part that will call the webservice
androidHttpTransport.call(SOAP_ACTION, envelope);
// Get the SoapResult from the envelope body.
SoapPrimitive result = (SoapPrimitive)envelope.getResponse();
SharedPreferences sharedPreferences;
sharedPreferences=PreferenceManager.getDefaultSharedPreferences(Demo_tabActivity.this);
Editor editor = sharedPreferences.edit();
editor.putString("your", "b");
editor.commit();
if(result != null)
{
b=result.toString();
Intent i = new Intent(getApplicationContext(),Tab_1.class);
i.putExtra("goto", b.toString());
startActivity(i);
}
else
{
Toast.makeText(getApplicationContext(), "oops!..empty",Toast.LENGTH_SHORT).show();
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
});
}
}
Tab_1.java
public class Tab_1 extends Activity
{
EditText tv;
String result;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab1);
SharedPreferences sharedPreferences;
sharedPreferences = PreferenceManager.getDefaultSharedPreferences(Tab_1.this);
String answer= sharedPreferences.getString("your","");
Bundle extras = getIntent().getExtras();
if(extras !=null)
{
result = extras.getString("goto");
}
tv=(EditText)findViewById(R.id.editText_output);
tv.setText(result);
}
}
Спасибо за ваше драгоценное время!