android-在eclipse里的Android程序为什么一运行就停止运行了?(新人求教)

问题描述

在eclipse里的Android程序为什么一运行就停止运行了?(新人求教)

package com.android.mytextview;

import java.lang.reflect.Field;

import android.support.v7.app.ActionBarActivity;
import android.text.Html;
import android.text.Html.ImageGetter;
import android.text.method.LinkMovementMethod;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;

public class MainActivity extends ActionBarActivity {

public int getResourceId(String name) {
    try {
        Field feild = R.drawable.class.getField(name);
        return Integer.parseInt(feild.get(null).toString());
    } catch (Exception e) {
        // TODO: handle exception
    }

    return 0;

}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    TextView textView = (TextView) this.findViewById(R.id.textview3);
    textView.setTextColor(Color.BLACK);
    textView.setBackgroundColor(Color.WHITE);
    textView.setTextSize(20);
    String html = "艾斯<img src='image(1)'/>海贼<img src='image(2)'/>哆啦A梦<img src='image(3)'/><p>";
    html += "传送门<a href='http://baidu.com'><img src='image(6)'></a>功夫熊猫<img src='image(4)'/>";

    CharSequence charSequence = Html.fromHtml(html, new ImageGetter() {

        @Override
        public Drawable getDrawable(String source) {
            // TODO 自动生成的方法存根
            Drawable drawable = getResources().getDrawable(
                    getResourceId(source));
            if (source.equals("image(3)")) {
                drawable.setBounds(0, 0, drawable.getIntrinsicWidth() / 2,
                        drawable.getIntrinsicHeight() / 2);
            } else {
                drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),
                        drawable.getIntrinsicHeight());
            }
            return drawable;
        }
    }, null);
    textView.setText(charSequence);
    textView.setMovementMethod(LinkMovementMethod.getInstance());

}

这是错误日志
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (1).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (1).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (1).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (2).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (2).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (2).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (3).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (3).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (3).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (4).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (4).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (4).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (6).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (6).png: Invalid file name: must contain only [a-z0-9_.]
[2015-12-18 20:13:37 - android_textview1] resdrawable-hdpi-v4image (6).png: Invalid file name: must contain only [a-z0-9_.]

解决方案

android_textview1] resdrawable-hdpi-v4image (1).png: Invalid file name: must contain only [a-z0-9_.],说明你的文件命名有问题,去掉()

解决方案二:

怎么在Eclipse上运行静态网页
eclipse 如何运行 .jsp文件?
lucene在Eclipse里的运行

解决方案三:

文件名字不对,去掉括号

解决方案四:

image(1)去掉括号

解决方案五:

resdrawable-hdpi-v4image (1).png
你的这个文件含有非法的文件名(Invalid file name),正确的文件名应该只含有[_a-z0-9_.]
应该是复制粘贴后产生的吧

解决方案六:

image (1).png image (2).png你在取图片的时候,这个图片的名字不对,你可以检察一下。

Invalid file name: must contain only [_a-z0-9_.]
这句话的意思是,有效的文件名,必须只包含中括弧、点、下划线、短线、字母a到z以及数字等内容。

解决方案七:

错误日志说的很明确啊 png图片命名问题

时间: 2024-09-19 08:51:47

android-在eclipse里的Android程序为什么一运行就停止运行了?(新人求教)的相关文章

在eclipse里配置Android ndk环境 适用于windows mac 和linux[转]

由于做Android在底层有库的时候需要交叉编译环境,c代码需要用ndk-build来进行编译,而java代码则需要用Android sdk编译.之前由于对eclipse ide不太熟悉,所以往往编译的时候都是在记事本里写好c代码,然后用cygwin搭建ndk-build环境,用ndk-build来编译出相关的so之后再用eclipse里去编译java程序,从而使用该so.       其实并不用这么复杂,利用eclipse完全可以达到编译so的目的         点击project->bui

Android配置----Eclipse+BlueStacks调试Android应用

[正文] 1.前期准备: (1)已经安装好Android SDK开发环境,参考本人博客:http://www.cnblogs.com/smyhvae/p/3788555.html. (2)下载并安装好BlueStacks.中文网址地址为http://www.bluestacks.net.cn/Download/ 2.eclipse配置BlueStacks 准备工作完成之后,接下来就要让eclipse和BlueStacks互相沟通沟通了.先打开BlueStacks,再开eclipse,切换到DDM

在Eclipse下搭建Android开发环境教程

我们昨天向各位介绍了<在NetBeans上搭建Android SDK环境>,前不久也介绍过<在MyEclipse 8.6上搭建Android开发环境>,都受到了读者的欢迎.但是很多朋友都认为NetBeans在中国用户不多,MyEclipse又是收费产品,都没有Eclipse好,很多读者都希望我们介绍一下Eclipse下搭建的Android开发环境,本文将全程演示Android开发环境的搭建过程,无需配置环境变量.所有软件都是写该文章时最新版本,希望大家喜欢. 一 相关下载 (1)J

android模拟器-eclipse 虚拟机无法使用编写的应用程序的menu

问题描述 eclipse 虚拟机无法使用编写的应用程序的menu //按书上做的 //以下为FirstActivity.java package com.test.activitytest; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.vi

android sdk-谁有mac版继承Android SDK的eclipse(不需要再在Android SDK Manager里在线下载的)

问题描述 谁有mac版继承Android SDK的eclipse(不需要再在Android SDK Manager里在线下载的) Https://dl-ssl.google.com确实让人抓狂,离线下载又不清楚下载路径跟对应目录:eclipse跟SDK都已经装好,就差version 17的Android SDK Tools以及不知道该放哪个目录.新建Android工程报错:Errors occurred during the build.Errors running builder 'Andro

图片-eclipse添加别人的Android程序,模拟器运行就会出现这种情况,不能用。怎么解决啊

问题描述 eclipse添加别人的Android程序,模拟器运行就会出现这种情况,不能用.怎么解决啊 解决方案 1.Yes,添加一个和别人Target一样的版本的模拟器 2.到配置文件里边更改一下目标版本,即打开AndroidManifest.xml,文件,然后更改 <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" /> 最低版本和目标版本 解决方案二: 去配置文件给一个

如何移除android模拟器里的应用程序?

问题描述 我最近在学android编程,IDE是MyEclipse,我发现运行android模拟器之后,里面有很多其他的应用程序(当然这个很好理解),我的应用程序也在里面,但是悲剧的是,我发现无法把自己的应用程序从模拟器中移除.当我自己做了很多DEMO之后,岂不是模拟器里一大堆的DEMO应用程序,如下: 问题补充:wjywjy678 写道 解决方案 设置----> 应用程序 ---> 管理应用程序解决方案二:系统里默认的是image里的,如果改image可以做到,但是那又何苦呢,如果是真机可以

activity跳转-为什么eclipse android 程序一打开就直接停止运行

问题描述 为什么eclipse android 程序一打开就直接停止运行 本人刚开始学习android,跟着书写了个程序,这个程序是在一个activity中的button跳转到另一个activity中,编译完没有问题,但是在手机上运行的时候却是意外停止, 这是第一个activity的代码: import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.vie

在Eclipse中的Android项目里实现代码复用

引言 开发时通常都会有多个项目间代码复用的需求,这时通常的做法是设置项目依赖,让一个项目引用另一个项目,比如在Visual Studio中这样就很容易实现. 而在Eclipse中的Android项目里,如果要引用另一个项目,理论上应该也使用类似的办法: 这里是引用一个名为Core的项目.这样做下来,在编写代码时不会有问题,但是在模拟器中运行时就会出现NoClassDefFoundError异常,原因是找不到引用项目中的类.而通过此窗口中Libraries选项卡中的各种功能添加引用,通常得到的结果