Android, как поджарить мой класс Simplexml? - PullRequest
0 голосов
/ 17 мая 2011

Извините, я совсем новичок в Android ... У меня есть действие, которое создает экземпляр объекта моего класса:

file MyActivity.java:

import org.simpleframework.xml.Serializer;
import org.simpleframework.xml.core.Persister;

public class MyActivity extends Activity {
    Artworks myArtworks;

    ...
    myArtworks = serial.read(Artworks.class, artworksXmlFile);
    ...
}
--------------------------------------------------------------

file Artworks.java:

import org.simpleframework.xml.Element;
import org.simpleframework.xml.ElementList;

@Element
public class Artworks {
    @ElementList(entry = "artwork", inline = true)
    private List<Artwork> list;
    ...
}
--------------------------------------------------------------

file Artwork.java:
public class Artwork {
    // how to use here Toast.makeText(..., text, Toast.LENGTH_SHORT).show() ???
}
--------------------------------------------------------------

Как использовать класс Toast (или любой класс пользовательского интерфейса)в моем классе Artwork, который я никогда не создаю напрямую, но он косвенно создается вызовом serial.read (Artworks.class)?Как мне это сделать, точно?

Заранее спасибо!

Ответы [ 2 ]

1 голос
/ 17 мая 2011

Вы можете использовать «статический» вспомогательный класс для поддержания статической ссылки на контекст вашей Деятельности.Поэтому, прежде чем десериализовать свой класс Artwork, позвоните UtilClass.setContext(getApplicationContext());.Затем в своем классе Artwork вы можете извлечь этот контекст и затем сделать что-то вроде Toast.makeText(UtilClass.getContext(), "text", Toast.LENGTH_LONG).show();.

0 голосов
/ 17 мая 2011
import android.widget.Toast;

public class Artwork {
   Toast.makeText(Artwork.this, "text", Toast.LENGTH_LONG).show();
}
...