У меня есть ListView ниже с ArrayAdapter, чтобы создать простое представление списка с соответствующими элементами Html, добавленными в папку assets .
import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
import android.content.Intent;
public class MainActivity extends ListActivity
{
String indx;
String[] values = { "index", "Prooo", "My Android Examples","My Android Tutorials","My Android Pages", "My Android Favorites"};
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// parameters are (Context, layout for the row, and the array of data)
setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, values));
}
@Override
public void onListItemClick(ListView l, View v, int position, long id)
{
indx = (String) getListAdapter().getItem(position);
Toast.makeText(this,indx,Toast.LENGTH_SHORT).show();
Intent i=new Intent(MainActivity.this,WebViewActivity.class);
startActivity(i);
}
}
Все остальное работает нормально, но цель состоит в том, чтобы изменить значение String indx с помощью элемента Position , возвращаемого onListItemClick , поскольку имя каждого документа Html одинаковое. как у каждого элемента String values .
Я устал обращаться к indx из класса WebViewActivity для отображения HTML, но значение String indx по-прежнему равно Null .
Я бы указал что-то вроде Public indx , если бы это был Python, пожалуйста, есть ли способ изменить Indx в Java, и я не могу использовать return < / strong>, потому что void не может вернуться
1 ответ
Для доступа к индексу в WebViewActivity. Вам нужно передать значение через намерение, как показано ниже,
Intent i=new Intent(MainActivity.this,WebViewActivity.class);
i.putExtra("index",indx);
startActivity(i);
Для получения вашей строки в WebViewActivity используйте приведенный ниже код в WebViewActivity, добавьте ниже код в Oncreate of WebViewActivity
String index=getIntent().getStringExtra("index");
Похожие вопросы
Новые вопросы
java
Java — это высокоуровневый объектно-ориентированный язык программирования. Используйте этот тег, если у вас возникли проблемы с использованием или пониманием самого языка. Этот тег часто используется вместе с другими тегами для библиотек и/или фреймворков, используемых разработчиками Java.