小编psv*_*psv的帖子

在第一次加载时未调用的Target对象的onBitmapLoaded

在我的功能:

public void getPointMarkerFromUrl(final String url, final OnBitmapDescriptorRetrievedListener listener) {
final int maxSize = context.getResources().getDimensionPixelSize(R.dimen.icon_max_size);
Target t = new Target() {
  @Override
  public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
    if (bitmap != null)
      listener.bitmapRetrieved(getBitmapDescriptorInCache(url, bitmap));
    else
      loadDefaultMarker(listener);
  }

  @Override
  public void onBitmapFailed(Drawable errorDrawable) {
    loadDefaultMarker(listener);
  }

  @Override
  public void onPrepareLoad(Drawable placeHolderDrawable) {
  }
};

Picasso.with(context)
    .load(url)
    .resize(maxSize, maxSize)
    .into(t);
}
Run Code Online (Sandbox Code Playgroud)

我第一次加载图片时从不调用onBitmapLoaded().我已经阅读了一些话题,如https://github.com/square/picasso/issues/39,建议使用fetch(Target t)方法(这似乎是弱引用的问题......),但是这个函数在毕加索的最后一个版本(2.3.2)中没有.我只有一个fetch()方法,但我不能同时使用(mytarget)

你能解释一下如何使用fetch()和自定义Target吗?谢谢.

文件:http://square.github.io/picasso/javadoc/com/squareup/picasso/RequestCreator.html#fetch--

picasso

122
推荐指数
6
解决办法
4万
查看次数

如何在Ionic Framework中自定义字体大小

我正在使用离子框架(使用cordova)来开发移动应用程序.我想要做的是增加字体大小(通常在我的应用程序中).

我在官方文档中看到过:http://ionicframework.com/tutorials/customizing-ionic-with-sass/.但我不明白一旦sass工作如何自定义.

我正在使用基于标签的应用程序:http://forum.ionicframework.com/uploads/default/269/9934610f0a08b8d2.png 我试图在选项卡上手动添加一个类,但结果不是很干净......文字被裁剪了......

有没有官方的方法来改变字体大小?

css font-size ionic-framework

14
推荐指数
3
解决办法
6万
查看次数

什么是Gradle中的dex

Gradle或Android中的dex是什么?

在Gradle,意思是dexoptions什么?

有时我的项目因为一些dexerrors而无法编译.我需要激活ProGuard来编译我的Android应用程序.

android proguard dex android-gradle-plugin dexoptions

10
推荐指数
1
解决办法
1万
查看次数

Gradle - 更改 jar 的名称

我想在执行以下操作时更改 jar 的名称

./gradlew clean assemble
Run Code Online (Sandbox Code Playgroud)

我的 jar 的名称是my-awsome-app-0.0.1-SNAPSHOT.jar,我想生成my-awsome-app.jar.

我在以下测试中执行此操作build.gradle

configurations {
   jar.archiveName = "my-awsome-app.${jar.extension}"
}
Run Code Online (Sandbox Code Playgroud)

...但这不起作用,名称仍然相同

java gradle spring-boot

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

nvd3库,如何自定义折线图

我正在使用nvd3在我的应用中绘制一些统计数据.我想增加图表中线条的粗细.怎么可能?

谢谢

css svg nvd3.js

8
推荐指数
1
解决办法
7649
查看次数

Spring启动禁用@EnableAsync进行集成测试

我想@EnableAsync在运行集成测试时禁用.

我试图覆盖配置文件,该文件使用@EnableAsync我的测试包中具有相同名称的类进行注释,但它不起作用.

在本主题中:是否可以在集成测试期间禁用Spring的@Async?

我看到了:

您可以...创建测试配置或使用SyncTaskExecutor简单地覆盖任务执行程序

但我不明白该怎么做.

有什么建议?谢谢

integration-testing spring-test-mvc spring-boot

8
推荐指数
2
解决办法
4176
查看次数

Gradle任务在构建配置中更改布尔值

我想创建一个非常简单的任务,它在我的gradle配置中更改一个布尔值.

我在Android应用程序上工作,可以使用多个配置文件运行,并且对于每个构建需要指定在我的代码中应用程序是否必须伪造蓝牙.

我的gradle(相关代码):

def fakeBluetooth = "true"

buildTypes {
    debug {
        minifyEnabled false
        signingConfig android.signingConfigs.debug
        buildConfigField "boolean", "fakeBluetooth", fakeBluetooth
    }
    release {
        minifyEnabled true
        signingConfig android.signingConfigs.release
        buildConfigField "boolean", "fakeBluetooth", fakeBluetooth
    }
}

task noFakeBluetooth {
    fakeBluetooth = "false"
}
Run Code Online (Sandbox Code Playgroud)

在我的java代码中使用的示例:

if (BuildConfig.fakeBluetooth) {
    processFictiveBluetoothService();
} else {
    // other case
}
Run Code Online (Sandbox Code Playgroud)

在命令行中使用的示例:

./gradlew iDebug noFakeBluetooth
Run Code Online (Sandbox Code Playgroud)

./gradlew iDebug
Run Code Online (Sandbox Code Playgroud)

问题:在两种情况下,fakeBluetooth的值始终为"true"(在cmd行中有或没有"noFakeBluetooth").

android build.gradle android-gradle-plugin

7
推荐指数
1
解决办法
5801
查看次数

Android比较两个片段

当我更改片段时,我想将新片段与当前片段进行比较.如果它们相同,则无需更换它们.

我试过了

 public void displayFragment(Fragment fragment){
    FragmentManager fm = getSupportFragmentManager();
    Fragment currentFragment = fm.findFragmentById(R.id.content_frame);
    if(!currentFragment.equals(fragment))
        getSupportFragmentManager().beginTransaction().addToBackStack(null).replace(R.id.content_frame, fragment).commit();
}
Run Code Online (Sandbox Code Playgroud)

但它不起作用,即使新的片段是相同的,片段也会改变

一个办法 ?谢谢

编辑

解决方案 :

public void displayFragment(Fragment fragment){
    FragmentManager fm = getSupportFragmentManager();
    Fragment currentFragment = fm.findFragmentById(R.id.content_frame);
    if(!fragment.getClass().toString().equals(currentFragment.getTag())){
        getSupportFragmentManager()
        .beginTransaction()
        .addToBackStack(null)
        .replace(R.id.content_frame, fragment, fragment.getClass().toString()) // add and tag the new fragment
        .commit();
    }
}
Run Code Online (Sandbox Code Playgroud)

android fragment

5
推荐指数
1
解决办法
6402
查看次数

5
推荐指数
1
解决办法
2543
查看次数

将数据从小部件发送到活动

我正在尝试将数据从我的小部件发送到我的活动。我已经看到了几个关于小部件方面的主题,但我没有成功地在我的活动中获取数据。

请参阅将数据从小部件传递到应用程序

在我的 Activity 中,我尝试在 onStart() 方法中执行以下操作:

Intent intent = getIntent();
if(intent.getStringExtra("he")!=null)
  LogWrapper.debug(MainActivity.class, "DATA "+intent.getStringExtra("he"));
else
  LogWrapper.debug(MainActivity.class, "DATA null"); 
Run Code Online (Sandbox Code Playgroud)

但意图始终为空。

小部件提供商方:

@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
super.onUpdate(context, appWidgetManager, appWidgetIds);
LogWrapper.info(DefibWidgetProvider.class,"in onUpdate!");
final int N = appWidgetIds.length;

// Perform this loop procedure for each App Widget that belongs to this provider
for (int i=0; i<N; i++) {
  int appWidgetId = appWidgetIds[i];

  // Create an Intent to launch MainActivity
  Intent intent = new Intent(context, MainActivity_.class);
  intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP …
Run Code Online (Sandbox Code Playgroud)

android android-widget

4
推荐指数
1
解决办法
1777
查看次数