これが良い質問かどうかはわかりませんが、これによって本当にブロックされています。アドバイスが必要です。
私は、アプリの一部が 2 つの異なるメニューで 2 つの個別の RSS フィードを取得する Android アプリに取り組んでいます。
両方のフィードに同じコードを使用していますが、両方のフィードが「奇妙」になります。
私が使用するいくつかの URL は問題なく表示され、タイトルはすべて適切に並んでいますが、必要な URL (1 つは ReverbNation (ショー スケジュール) からのもの、もう 1 つは Facebook (ウォール フィード) からのもの) など、使用する他の URL は最終的に表示されます。すべて「分割」。
結果を ListView に入れると、結果が返されると、一部の文字列は個別の文字列/リストビュー項目に分割され、一部の文字列は空白であり、空白のリストビュー項目として表示されます。
誰かが私に何かアドバイスはありますか? 漠然とした質問だとは思いますが、ここで壁にぶつかりました。
コード:
private class RSSHandler extends DefaultHandler
{
final int stateUnknown = 0;
final int stateTitle = 1;
final int stateLink = 2;
int state = stateUnknown;
@Override
public void startDocument() throws SAXException {
// TODO Auto-generated method stub
}
@Override
public void endDocument() throws SAXException {
// TODO Auto-generated method stub
}
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
localnames.add(localName);
if (localName.equalsIgnoreCase("title"))
{
state = stateTitle;
} else if (localName.equalsIgnoreCase("link")){
state = stateLink;
} else if (localName.equalsIgnoreCase("item")){
Log.d("Tour", "item");
}
else
{
state = stateUnknown;
}
}
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
// TODO Auto-generated method stub
state = stateUnknown;
}
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
// TODO Auto-generated method stub
String strCharacters = new String(ch, start, length);
xmlStrings.add(strCharacters);
if (state == stateTitle)
{
item.add(strCharacters);
} else if (state == stateLink)
{
itemLink.add(strCharacters);
}
}