Передача переменных между классами в Java - PullRequest
0 голосов
/ 11 октября 2011

Я создал и парсер XML, который получает данные в теге description. Я пытаюсь передать его в веб-представление, потому что он имеет форматирование HTML. Я новичок в Java и не знаю, как это сделать.

Вот что я имею в первом классе:

 Intent intent = new Intent(this,Webscreen.class);
 Bundle bundle = new Bundle();
 bundle.putString("keyDescription", myRssFeed.getItem(position).getDescription());
 intent.putExtras(bundle);
 startActivity(intent);

Это то, что я имею во втором классе:

public static final String URL = "";
private static final String TAG = "WebscreenClass";

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.webscreen);

    if(URL == null && URL == ""){
        WebView webview = (WebView) findViewById(R.layout.webscreen);
        String htmlString = keyDescription;
        webview.loadData(htmlString, "text/html", "utf-8");
    }else{
        String turl = getIntent().getStringExtra(URL);
        Log.i(TAG, " URL = "+turl);

        WebView webview = new WebView(this);
        WebSettings websettings = webview.getSettings();
        websettings.setJavaScriptEnabled(true);
        setContentView(webview);


        // Simplest usage: An exception won't be thrown if there is a page-load error
        webview.loadUrl(turl);
    }
}

Я использую оператор if else, потому что я также использую этот класс для загрузки веб-страниц. Спасибо за вашу помощь!

Ответы [ 2 ]

0 голосов
/ 11 октября 2011

первый: ваш if-Statment неверен.Это было бы "ложным" при каждом запуске.Вы должны использовать "||"вместо "&&".Проблема в том, что ваша строка URL может быть только «нулевой» или пустой.

секунда: вы можете получить «keyDescription» со следующим статусом во втором упражнении:

String keyDescription = savedInstanceState.getString("keyDescription");
0 голосов
/ 11 октября 2011

Во втором упражнении просто получите дополнительные данные.

  Bundle extras = getIntent().getExtras();
...