【问题标题】:What is wrong with my android code?我的安卓代码有什么问题?
【发布时间】:2013-08-27 14:35:02
【问题描述】:
public class WypadekInformacjeActivity extends Activity {
    TextView tv1;

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.wypadek);

        WebView webView = (WebView) findViewById(R.id.webView);
//        webView.setScrollBarStyle(WebView.SCROLLBARS_INSIDE_OVERLAY);

        webView.setBackgroundColor(0);
        LoadText lt = new LoadText();
        String html = lt.load(R.raw.wypadek, this);

        webView.loadDataWithBaseURL(null, html, "text/html", "UTF-8", null);

        Pattern pattern = Pattern.compile("\\d{3}?");

        tv1 = (TextView) findViewById(R.id.textView1);
        tv1.setAutoLinkMask(0);
//        Linkify.addLinks(tv1, pattern, "tel: ");
//        tv1.setAutoLinkMask(Linkify.PHONE_NUMBERS);
    }
}

错误/AndroidRuntime(28184):致命异常:主要

...

原因:java.lang.NullPointerException 在 com.example.swubezpieczenia.WypadekInformacjeActivity.onCreate(WypadekInformacjeActivity.java:29)

当我尝试 setAutoLinkMask(0) 时会发生这种情况。这是第 29 行:“tv1.setAutoLinkMask(0);”。当我评论这一行时,也不例外。

【问题讨论】:

  • textView1 是否属于 wypadek?
  • R.id.textView1 是文本视图的正确 id 吗?
  • textView1 不属于 wypadek。你解决了,谢谢。

标签: android linkify


【解决方案1】:

看起来您的文本视图不存在。 尝试将第 29 行换成这样的“if”语句:

if(tv1 != null){
   //original line 29 goes here
}

然后再次运行它。这次不应该发生异常。如果真的没有发生, 我认为你最好的选择是重新检查你的文本视图的名称,确保它在你发送到 setContentView() 的同一个布局 xml 中退出。

【讨论】:

    【解决方案2】:

    您指的是未确定的索引“0”,请使用Linkify 来引用有效的索引

    示例:

    tv1.setAutoLinkMask(Linkify.ALL);
    

    【讨论】:

    • 使用 0 不会导致 NullPointerException。也许是 InvalidInputException 之类的。
    • 是的。我错了,看到他已经用 linkify 注释了代码
    • 无论如何你的信息是好的和重要的。我他们使用 ENUM 而不是 ints 来处理这些事情。
    猜你喜欢
    • 2017-07-30
    • 1970-01-01
    • 2011-07-28
    • 1970-01-01
    • 2019-06-06
    相关资源
    最近更新 更多