小编Nic*_*ick的帖子

无法安装Android 4.2 API

我今天通过Eclipse更新了ADT到21版.现在当我打开SDK Manager时,我希望有一个像"Android 4.2(API 17)"这样的文件夹,其中包含SDK平台和API,文档等.但是,相反,我只得到一个名为"API 17"的文件夹,其中唯一的东西是"Google API",我甚至无法安装,因为

安装此软件包还需要安装: - 缺少SDK平台Android,API 17

我该怎么办?谢谢

android

89
推荐指数
4
解决办法
2万
查看次数

在Android中使用color和color.darker?

好的,我的应用程序中有一个整数变量.这是一种颜色的值,由我喜欢的颜色选择器设置.现在,我需要使用它的颜色和任何颜色的深色版本.

现在我知道在标准Java中有一个Color.darker()方法,但在Android中似乎没有相应的东西.有谁知道等效或任何变通方法?

java android colors

63
推荐指数
4
解决办法
3万
查看次数

Android HTML ImageGetter as AsyncTask

好吧,我对这个失去了理智.我的程序中有一个解析HTML的方法.我想要包含内嵌图像,我的印象是使用Html.fromHtml(字符串,Html.ImageGetter,Html.TagHandler)将允许这种情况发生.

由于Html.ImageGetter没有实现,所以由我来编写一个.但是,由于将URL解析为Drawables需要网络访问,我不能在主线程上执行此操作,因此它必须是AsyncTask.我认为.

但是,当您将ImageGetter作为参数传递给Html.fromHtml时,它使用必须重写的getDrawable方法.因此无法调用触发doInBackground方法的整个ImageGetter.execute事务,因此无法实际实现此异步.

我是否完全错了,或者更糟糕的是,这是不可能的?谢谢

android html-parsing drawable android-asynctask

32
推荐指数
2
解决办法
2万
查看次数

Android ImageGetter图像重叠文本

我正在尝试将一块HTML加载到TextView中,包括图像,使用

URLImageParser p = new URLImageParser(articleBody, this);
Spanned htmlSpan = Html.fromHtml(parsedString, p, null);
Run Code Online (Sandbox Code Playgroud)

顺便说一句,parsedString是HTML.无论如何,它加载,但图像没有创建任何空间供他们坐下,所以他们最终重叠他们上面的文本.这是我的URLImageParser文件:

public class URLImageParser implements Html.ImageGetter {
Context c;
View container;

/***
 * Construct the URLImageParser which will execute AsyncTask and refresh the container
 * @param t
 * @param c
 */
public URLImageParser(View t, Context c) {
    this.c = c;
    this.container = t;
}

public Drawable getDrawable(String source) {
    URLDrawable urlDrawable = new URLDrawable();

    // get the actual source
    ImageGetterAsyncTask asyncTask = 
        new ImageGetterAsyncTask( urlDrawable);

    asyncTask.execute(source);

    // …
Run Code Online (Sandbox Code Playgroud)

android html-parsing textview spanned

24
推荐指数
2
解决办法
8373
查看次数

片段实现OnClickListener

我有一个应用程序,我正在进行现代化.此过程的一个步骤是更改为基于片段的布局(使用支持库中的片段).我将我的活动转换为碎片,并使布局运行良好(使用ViewPager,很棒的东西!)

我正在让我的活动实现OnClickListener以满足我所有的按钮需求.我当然有新的Fragment化身做同样的事情,但看起来"onClick"永远不会被击中.碎片有什么特别之处可以防止它们以这种方式工作吗?

android android-fragments onclicklistener

17
推荐指数
2
解决办法
5万
查看次数

小部件错误的网格大小

我写了一个应该是4x2主屏幕块的小部件.这是minheight和minwidth,根据当前的"App Widget Design Guidelines"页面

android:minWidth="250dp"
android:minHeight="110dp"
Run Code Online (Sandbox Code Playgroud)

如果系统版本低于Ice Cream Sandwich,则应从dimens.xml应用填充

在我的Nexus 4(xhdpi,Jellybean 4.2.1)上,这个小部件是4x2.在模拟器(hdpi,Gingerbread 2.3.3)上,这个小部件是4x2.然而,在我的Nexus 7(hdpi,Jellybean 4.2.1)上,小部件是3x2.我不能为我的生活弄清楚为什么或如何解决它.有什么想法吗?

android widget sizing android-appwidget

13
推荐指数
1
解决办法
2917
查看次数

ACTION_BATTERY_CHANGED像疯了一样开火

好的,所以我正在开发一个AppWidget来检查电池电量并将其显示在TextView上.我的代码看起来像这样:

public class BattWidget extends AppWidgetProvider {

private RemoteViews views = new RemoteViews("com.nickavv.cleanwidgets", R.layout.battlayout);

@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int appWidgetIds[]) {
    final int N = appWidgetIds.length;
    context.getApplicationContext().registerReceiver(this,new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
    for (int i = 0; i < N; i++) {
        int appWidgetId = appWidgetIds[i];
        appWidgetManager.updateAppWidget(appWidgetId, views);
    }
}

@Override
public void onReceive(Context context, Intent intent) {
    super.onReceive(context, intent);
    Log.d("onReceive", "Received intent " + intent);
    if (intent.getAction().equals(Intent.ACTION_BATTERY_CHANGED)) {
        Integer level = intent.getIntExtra("level", -1);
        views.setTextViewText(R.id.batteryText, level+"%");
        AppWidgetManager myAWM = AppWidgetManager.getInstance(context);
        ComponentName …
Run Code Online (Sandbox Code Playgroud)

android battery broadcastreceiver android-appwidget

12
推荐指数
1
解决办法
5747
查看次数

AdMob广告未显示

我正在为已完成的已发布的Android应用添加AdMob广告(比如快五倍).我添加了AdMob附带的PDF代码,按照他们对T恤的说明.测试广告在我的模拟器和指定的测试设备上显示正常.当您下载并运行它们时,它们不会出现在已发布的市场应用程序中.不过,我仍会在AdMob页面上留下印象.有任何想法吗?

android admob

9
推荐指数
1
解决办法
6960
查看次数

ImageButtons数组,从变量中分配R.view.id

嘿.我的应用程序将使用64个ImageButtons(8x8)的数组,并且它们都已在我的XML布局中声明,其名称类似于one1,two5,eight8等.而不是在我的Java中单独声明它们我认为它可能很聪明地在一些for循环中声明它们.我有

ImageButton musicGrid[][] = new ImageButton [8][8];
Run Code Online (Sandbox Code Playgroud)

然后我有我的嵌套for循环,它基本上创建了一个代替R.id.whatever的字符串.它只是我循环中的最后一行,应该进行分配.它的正确语法是什么,或者甚至不可能做到(如果是这样,我将如何更好地处理64按钮网格?).谢谢!

for (int i = 0; i < 8; i++) {
        for (int j = 0; j < 8; j++) {
            String btnID = "R.id.";
            switch(i) {
            case 0: btnID.concat("one"); break;
            case 1: btnID.concat("two"); break;
            case 2: btnID.concat("three"); break;
            case 3: btnID.concat("four"); break;
            case 4: btnID.concat("five"); break;
            case 5: btnID.concat("six"); break;
            case 6: btnID.concat("seven"); break;
            case 7: btnID.concat("eight"); break;
            }
            switch(j) {
            case 0: btnID.concat("1"); break;
            case 1: btnID.concat("2"); break;
            case 2: btnID.concat("3"); …
Run Code Online (Sandbox Code Playgroud)

arrays android imagebutton

9
推荐指数
1
解决办法
8744
查看次数

AppWidget alarmmanager没有更新

所以,我有一个小部件,我希望它每60秒更新一次.当小部件首次添加到主屏幕时,它会正常运行其更新功能.除此之外,它应该启动一个AlarmManager,它将每60秒重新运行一次更新方法.这是它似乎没有真正做的部分.这是我的代码:

public class ClockWidget extends AppWidgetProvider {

    public static String CLOCK_WIDGET_UPDATE = "com.nickavv.cleanwidget.CLEANCLOCK_UPDATE";

    @Override
    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int appWidgetIds[]) {
        final int N = appWidgetIds.length;
        for (int i = 0; i < N; i++) {
            int appWidgetId = appWidgetIds[i];
            RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.clocklayout);
            appWidgetManager.updateAppWidget(appWidgetId, views);
            updateAppWidget(context, appWidgetManager, appWidgetId);
        }
    }

    public static void updateAppWidget(Context context, AppWidgetManager appWidgetManager, int appWidgetId) {
        Log.d("log","Entered update cycle");
        //Unimportant for these purposes
        appWidgetManager.updateAppWidget(appWidgetId, views);
    }


    private PendingIntent createClockTickIntent(Context context) { …
Run Code Online (Sandbox Code Playgroud)

android android-widget alarmmanager android-intent

9
推荐指数
1
解决办法
3516
查看次数