现在我知道这些是相当常见的问题,但我使用的文本视图无法解决。我已经清理了项目,导入了android.widget.TextView,但它继续标记为未解析。
这是我正在使用的代码:
public void onStart() {
super.onStart();
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet("http://1.php");
HttpResponse response = client.execute(request);
// Get the response
BufferedReader rd = new BufferedReader
(new InputStreamReader(response.getEntity().getContent()));
String line = "";
while ((line = rd.readLine()) != null) {
TextView.append(line);
}
}
activity_main中的TextView:
<TextView
android:id="@+id/TextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10">
</TextView>
对此有任何想法吗?
编辑:
TextView textView = (TextView) findViewById(R.id.TextView1);
String line = "";
while ((line = rd.readLine()) != null) {
TextView1.append(line);
}
以TextView1开头的结束行提供错误,指出无法解析。只是TextView1
,而不是整行。
编辑28/10/2012:
好的,所以TextView现在正在工作,但反过来,代码的其他部分却没有。这是截图显示的确切内容。我可以在try和catch语句中包装其中的每一个,但然后app force在我的Android设备上关闭。
http://southwestdesign.org.uk/Code.jpg
请问这个想法吗?
答案 0 :(得分:18)
您导入了textview吗?
import android.widget.TextView;
答案 1 :(得分:7)
您需要获取特定的TextView:
TextView textView = (TextView) findViewById(R.id.TextView);
String line = "";
while ((line = rd.readLine()) != null) {
textView.append(line);
}
(你真的应该给TextView一个独特的,更具描述性的id,比如android:id="@+id/webContentTV"
。这样当你使用10-20 TextView时,你可以很容易地跟踪它们。)
<强>加成强>
XML中的id
:
<!-- Notice I gave this TextView a more descriptive id. -->
<TextView
android:id="@+id/webContentTV"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10" />
必须匹配您传递给findViewById()
的确切ID:
TextView textView = (TextView) findViewById(R.id.webContentTV);
String line = "";
while ((line = rd.readLine()) != null) {
textView.append(line);
}
目前你的身份证不匹配:android:id="TextView"
不是findViewById(R.id.TextView1)
答案 2 :(得分:2)
我遇到了同样的问题。问题是我先创建了一个项目,然后没有完成。所以我创建了第二个项目。 Texview是Texview2,而editText是editText2。您可能需要将textView更新为textView2。希望这可以帮助。
答案 3 :(得分:1)
由于海报问题状态“TextView”无法解决。问题在于TextView或TextView应该解决的位置。在这种情况下,它是android.widget.TextView类。
AS ide不会使它变得友好但是如果你将光标留在类的最左边(字面意思是类的左边缘,它将暗示你当然意味着什么...... android.widget。 TextView ...你可以自己输入,也可以点击(windows)alt + enter,它会正确地将值设置为整个类的引用。
当高光不是红色时,您知道它是正确的参考。
对我来说,我更喜欢把它写出来
android.widget.TextView myText = (TextView)findViewById(R.id.myTextViewId);
知道我在引用它是什么,其他人也可以。
但是,如果您想确定参考文献符合您的预期......
点击/输入ctrl +点击短语,即TextView,它会带你到确切的java类...在这种情况下通过android sdk
angroid.widget.TextView.java
package android.widget;
恕我直言,这是我不喜欢IDE的东西。合并冲突/咆哮更不用说了。
希望这有助于其他人。