小编use*_*104的帖子

如何在gradle中获得当前的味道

我的应用程序有两种产品风格:

productFlavors {
    europe {
        buildConfigField("Boolean", "BEACON_ENABLED", "false")
    }

    usa {
        buildConfigField("Boolean", "BEACON_ENABLED", "true")
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我想在任务中获取当前的flavor名称(我在Android Studio中选择的名称)以更改路径:

task copyJar(type: Copy) {
    from('build/intermediates/bundles/' + FLAVOR_NAME + '/release/')
}
Run Code Online (Sandbox Code Playgroud)

如何在Gradle中获得FLAVOR_NAME?

谢谢

android gradle build.gradle android-gradle-plugin

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

Flutter:ListView 顶部出现意外的空间

我有以下源代码:

@override
Widget build(BuildContext context) {
  return Scaffold(
    body: CustomScrollView(
      controller: scrollController,
      slivers: <Widget>[
        SliverList(
          delegate: SliverChildBuilderDelegate(
            (context, cardIndex) {
              return Container(
                color: Colors.white,
                child: Column(
                  crossAxisAlignment: CrossAxisAlignment.start,
                  children: <Widget>[
                    Text(
                      'Main Course',
                      style: kRestaurantMenuTypeStyle,
                    ),
                    ListView.builder(
                      itemCount: menuCards[cardIndex].menuItems.length,
                      shrinkWrap: true,
                      physics: NeverScrollableScrollPhysics(),
                      scrollDirection: Axis.vertical,
                      itemBuilder: (context, itemIndex) {
                        return RestaurantMenuItem(
                          menuItem: menuCards[cardIndex].menuItems[itemIndex],
                        );
                      },
                    ),
                  ],
                ),
              );
            },
            childCount: menuCards.length,
          ),
        ),
      ],
    ),
  );
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,它ListView.builder()会自动在顶部创建这个额外的空间。如下图所示。这是“主菜”和“Pancit Malabon”文本之间的大空白。

在此输入图像描述

我不明白为什么ListView要这样做。如何删除空格?

listview flutter

19
推荐指数
3
解决办法
9063
查看次数

如何在谷歌地图android上添加标记?

我是Android编程的初学者.我已经看过类似的问题和答案,但我仍然无法弄清楚为什么这不起作用.当我在模拟器上尝试此操作并单击某个位置时,不会显示任何标记.这是我的代码:

编辑:当我现在点击以下代码时,我得到一个标记.当我第二次单击地图时,它只给我一个运行时异常(NullPointer异常):

public class MapViewFragment extends Fragment {

    MapView mMapView;
    private GoogleMap googleMap;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_map_view, container, false);
        mMapView = (MapView) rootView.findViewById(R.id.mapView);
        mMapView.onCreate(savedInstanceState);
        mMapView.onResume();

        Context context = getActivity().getApplicationContext();

        final LocationsDB locationsDB = new LocationsDB(context);

        try {
            MapsInitializer.initialize(getActivity().getApplicationContext());
        } catch (Exception e) {
            e.printStackTrace();
        }

        mMapView.getMapAsync(new OnMapReadyCallback() {
            @Override
            public void onMapReady(GoogleMap mMap) {
                googleMap = mMap;
                googleMap.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
                    public void onMapClick(LatLng point) {
                        // Drawing marker on the …
Run Code Online (Sandbox Code Playgroud)

android google-maps

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

Laravel 5 SwiftMailer发送:如何获取错误代码

美好的一天,

我发送的电子邮件类似于:Laravel 5:发送电子邮件.我是这样做的:

$mail_status = Mail::send( 'emails.followup', $data, function( $message ) use ($data) {
             $message->to( $data['email'] )
            ->from( $data['email_from'], $data['email_name'] )
            ->subject( $data['subject'] );
        });

if($mail_status) {
    $ret_status = 'sent';
}
else
    $ret_status = 'sent_failed';
Run Code Online (Sandbox Code Playgroud)

现在,如果$ret_status是'sent_failed',我想知道发生了什么.我该怎么做?如何从邮件服务器查看邮件?

这是我的.env档案:

MAIL_DRIVER=smtp
MAIL_HOST=mail.mydomain.com
MAIL_PORT=465
MAIL_USERNAME=noreply@mydomain.com
MAIL_PASSWORD=thepassword
MAIL_ENCRYPTION=ssl
Run Code Online (Sandbox Code Playgroud)

更新:

看起来上面的方法是Laravel 4.如果您知道如何使用Laravel 5+获取错误代码,我可以将其视为正确的答案.

php email laravel

12
推荐指数
2
解决办法
1825
查看次数

Eclipse到Android Studio Import

我正在按照Android官方网站的建议将所有源代码移动到AS.但是,经验不是很好.这里描述的非常缓慢.但这不是我现在的最终问题.

我已经解决了许多问题,比如更新compileSdkVersion23以便99这样的错误:

错误:(13)检索项目的父项时出错:找不到与给定名称"android:TextAppearance.Material.Inverse"匹配的资源.

可以纠正.但是当我走的时候,问题仍在继续.现在我有64k Dex问题.

错误:.dex文件中的方法引用数不能超过64K.请访问https://developer.android.com/tools/building/multidex.html,了解如何解决此问题

Dex在使用Eclipse时从未遇到过这个问题.我在AS中的源代码与它所在的源代码完全相同Eclipse.唯一的区别是只需要在AS上工作的那些gradle更改.知道为什么这个突然的Dex问题?如果我multiDexEnabled愿意true,有什么影响?

eclipse android android-studio

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

Android应用程序在Real Device上崩溃如果手动安装了apk

我的应用程序在Emulators中运行良好,甚至在android studio安装的实际设备中用于调试目的,但如果使用apk文件手动安装它会崩溃.

我准备粘贴任何其他代码,如活动,如果需要.

这是logcat:

04-14 12:20:44.392 6220-6220/? I/art: Late-enabling -Xcheck:jni
04-14 12:20:44.465 6220-6220/test.planner W/System: ClassLoader referenced unknown path: /data/app/test.planner-1/lib/arm
04-14 12:20:44.467 6220-6220/test.planner I/InstantRun: starting instant run server: is main process
04-14 12:20:44.470 6220-6220/test.planner D/AndroidRuntime: Shutting down VM
04-14 12:20:44.471 6220-6220/test.planner E/AndroidRuntime: FATAL EXCEPTION: main
Process: test.planner, PID: 6220
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{test.planner/test.planner.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "test.planner.MainActivity" on path: DexPathList[[zip file "/data/app/test.planner-1/base.apk"],nativeLibraryDirectories=[/data/app/test.planner-1/lib/arm, /vendor/lib, /system/lib]]
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2327)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
    at android.app.ActivityThread.-wrap11(ActivityThread.java)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:148)
    at android.app.ActivityThread.main(ActivityThread.java:5417) …
Run Code Online (Sandbox Code Playgroud)

java crash android

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

没有加号的新资源ID声明

这个文档总是困惑我:

对于ID值,通常应使用以下语法形式:"@ + id/name".加号+表示这是一个新的资源ID,aapt工具将在R.java类中创建一个新的资源整数(如果它尚不存在).例如:

<TextView android:id="@+id/nameTextbox"/>
Run Code Online (Sandbox Code Playgroud)

我已经编程了很长一段时间了.但是,我从来没有遇到任何我必须使用没有加号的ID声明的情况.这也是违反直觉的.ID应该是唯一的!

这有什么好的用例吗?为什么要重新使用相同的资源ID名称?

android android-resources

8
推荐指数
3
解决办法
315
查看次数

具有无限旋转口吃的ObjectAnimator

我有一个动画师infinite_rotation,定义为:

<set xmlns:android="http://schemas.android.com/apk/res/android">
    <objectAnimator
        android:propertyName="rotation"
        android:repeatCount="infinite"
        android:valueFrom="0"
        android:valueTo="360"
        android:duration="2000" />
</set>
Run Code Online (Sandbox Code Playgroud)

当时间(时间不确定)到来时我不再需要这个,我打电话infinite_animator.cancel().然后在其布局容器上播放fade_out动画:

<set xmlns:android="http://schemas.android.com/apk/res/android">
        <objectAnimator
            android:propertyName="alpha"
            android:repeatCount="0"
            android:valueTo="0.0"
            android:duration="1000" />
</set>
Run Code Online (Sandbox Code Playgroud)

生成的动画是,旋转按预期停止,但在淡出时停顿.我错过了什么?

以下是它的外观:

在此输入图像描述

更新:我在使用Kitkat OS的旧三星Tab 4上测试了上述问题.我刚刚使用Marshmallow OS测试了一款相当新的三星Tab 4.动画效果很好.所以我想更好的问题是如何修复旧设备/操作系统上的草率动画?

这是动画调用:

private void animateRefreshButton() {
    ImageView iv_refresh = (ImageView) findViewById(R.id.iv_refresh);

    if(infinite_animator == null) {
        infinite_animator = AnimatorInflater.loadAnimator(this, R.animator.refresh_rotate);
    }
    infinite_animator.setTarget(iv_refresh);
    infinite_animator.start();
}
Run Code Online (Sandbox Code Playgroud)

hideRefreshButton()应用程序确定刷新完成时启动.这是取消和淡出动画的调用:

private void hideRefreshButton() {
    if(infinite_animator != null) {
        infinite_animator.cancel();
    }

    Animator anim = AnimatorInflater.loadAnimator(this, R.animator.refresh_fadeout);
    anim.addListener(new Animator.AnimatorListener() {
        @Override
        public void onAnimationStart(Animator …
Run Code Online (Sandbox Code Playgroud)

java animation android android-animation objectanimator

6
推荐指数
1
解决办法
2299
查看次数

如何检查 jQuery 的 FIND 结果

我一直在努力解决这个简单的脚本,并且在 StackOverflow 中找不到相关问题。这是我的问题。

我有两个盒子。<div class="notselected">如果通过单击事件变为,则框将以蓝色突出显示<div class="selected">

在此输入图像描述

如果没有选择任何框,则父框应以红色突出显示,如下所示:

在此输入图像描述

这是一个片段:

$(document).ready(function(){
    var parent = $(this).find(".parent");
    if(parent) {
        var selected = parent.find("div.selected");
        if(selected) {
            selected.css({"color": "blue", "border": "2px solid blue"});
        }
        else {
            parent.css({"color": "red", "border": "2px solid red"});
        }
    }
});
Run Code Online (Sandbox Code Playgroud)
.ancestors *:not(script) { 
    display: block;
    border: 2px solid lightgrey;
    color: lightgrey;
    padding: 5px;
    margin: 15px;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body class="ancestors">
  <div class="parent"> Parent Box
    <div class="notselected"> Box A </div>
    <div class="notselected"> Box B </div>
  </div> 
</body>
Run Code Online (Sandbox Code Playgroud)

请让我知道我缺少什么。谢谢你的帮助!

html javascript css jquery

6
推荐指数
1
解决办法
2967
查看次数

TextBaseline 的字母和表意枚举在 Flutter 中不起作用

我想我了解这些枚举是如何根据这篇文章工作的。当我使用以下代码尝试它时,它似乎不起作用。

Row(
  mainAxisAlignment: MainAxisAlignment.center,
  crossAxisAlignment: CrossAxisAlignment.baseline,
  textBaseline: TextBaseline.ideographic,
  children: <Widget>[
    Text(
      'abcdefg',
      style: TextStyle(
          fontSize: 50.0, fontWeight: FontWeight.w900),
    ),
    Text(
      'hi',
      style: TextStyle(fontSize: 15.0),
    ),
  ],
),
Run Code Online (Sandbox Code Playgroud)

但是,无论我选择用作文本基线(表意文字还是失语),结果总是相同的:

在此处输入图片说明

我希望“hi”与“abcdefg”的表意基线对齐,而不是像这样与其字母基线对齐:

在此处输入图片说明

我究竟做错了什么?

编辑:

两者在Rowwidget的上下文中应该是有区别的。我尝试删除该行textBaseline: TextBaseline.ideographic,但出现此错误:

'package:flutter/src/widgets/basic.dart': Failed assertion: line 3791 pos 15: 'crossAxisAlignment != CrossAxisAlignment.baseline || textBaseline != null': is not true.
Run Code Online (Sandbox Code Playgroud)

要求使用哪个基线必须是 Flutter 知道要对齐哪个基线的方式。

text baseline flutter

6
推荐指数
1
解决办法
615
查看次数