小编Jum*_*mpa的帖子

Eclipse ADT捆绑包无法正常工作

我刚从官方网站下载了Eclipse ADT Bundle:http://developer.android.com/sdk/index.html(特别是adt-bundle-windows-x86_64-20140624.zip).我在Win 7 64位,我的MD5匹配zip文件,但Juno无法正确加载(我正在运行带管理员权限的eclipse.exe):没有ADT插件,没有应用程序标题(通用资源 - ) ,没有SDK管理员链接,ecc.ecc.我的工作区文件夹在c:/ dev/android下完全干净,我安装了最新的64位JDK(版本8更新5).我还试过另一台带有Windows 8的电脑,没有运气.这有什么不对?

eclipse android adt eclipse-adt java-8

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

折叠工具栏标题消失

我在设计支持库23.0.1上,我正在使用带有视差图像的折叠工具栏布局.我不明白为什么当工具栏完全折叠(固定)时,如果单击一个操作按钮(特别是我刷新其图像),标题就会消失.之后,如果我将标题下拉到总扩展并重新点击操作按钮,标题将返回.

活动布局

<!-- App bar -->
<android.support.design.widget.AppBarLayout
    android:id="@+id/app_bar"
    android:layout_width="match_parent"
    android:layout_height="150dp"
    android:fitsSystemWindows="true"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

    <!-- Collapsing toolbar layout -->
    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/collapsing_toolbar"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        app:contentScrim="?attr/colorPrimary"
        app:expandedTitleMarginBottom="32dp"
        app:expandedTitleMarginEnd="64dp"
        app:expandedTitleMarginStart="48dp"
        app:layout_scrollFlags="scroll|exitUntilCollapsed">

        <!-- Image Parallax -->
        <ImageView
            android:id="@+id/header"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:adjustViewBounds="true"
            android:contentDescription=""
            android:fitsSystemWindows="true"
            android:scaleType="centerCrop"
            edo:layout_collapseMode="parallax" />

        <!-- Toolbar -->
        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            app:layout_collapseMode="pin"
            edo:popupTheme="@style/ThemeOverlay.AppCompat.Light">

        </android.support.v7.widget.Toolbar>

    </android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>

<!-- Nested scroll view -->
<android.support.v4.widget.NestedScrollView
    android:id="@+id/nested_scroll_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    edo:layout_behavior="@string/appbar_scrolling_view_behavior">

</android.support.v4.widget.NestedScrollView>
Run Code Online (Sandbox Code Playgroud)

动作菜单布局

<item
    android:id="@+id/action_bookmark"
    android:icon="@mipmap/bookmark_empty_white"
    android:title="@string/add_news_to_bookmarks"
    app:showAsAction="ifRoom" />
Run Code Online (Sandbox Code Playgroud)

选择的选项

@Override
public boolean onOptionsItemSelected(MenuItem item) { …
Run Code Online (Sandbox Code Playgroud)

android android-layout android-menu android-toolbar android-design-library

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

AutocompleteTextView 单击侦听器调用两次

我有这个布局:

<com.google.android.material.textfield.TextInputLayout
    android:id="@+id/input_birthdate"
    style="@style/ExposedDropDownMenu"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="@string/birthdate">

    <AutoCompleteTextView
        android:id="@+id/autocomplete_birthdate"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:editable="false" />

</com.google.android.material.textfield.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)

使用这种风格:

<!-- ExposedDropdownMenu -->
<style name="ExposedDropDownMenu" parent="Widget.MaterialComponents.TextInputLayout.OutlinedBox.ExposedDropdownMenu">
    <item name="boxStrokeColor">@color/text_input_layout_outlined_box_stroke</item>
    <item name="hintTextColor">@color/green_2</item>
</style>
Run Code Online (Sandbox Code Playgroud)

我试图在自动完成文本视图上设置一个点击侦听器:

autoComplete.setOnClickListener(view -> {
    // This is called twice when i click the autocomplete textview
});
Run Code Online (Sandbox Code Playgroud)

侦听器被调用两次......为什么?我该如何解决这个问题?

编辑:删除样式,第一次点击(获得焦点)被忽略,第二次点击被正确调用一次,但无论如何我失去了“涟漪”背景效果。

java android autocompletetextview onclicklistener dropdown

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

onPause() 在启动时调用

我遇到了一种奇怪的(也许这是正常的...)行为。我有一个带有viewpager的活动,里面有 3 个片段。我正在使用 FragmentPagerAdapter 和 setOffScreenPageLimit = 3。当我在应用程序第一次打开时将 apk 部署到我的设备 (N4)时,在 onResume 之后,onPause 方法被调用。这给我带来了一些问题,因为我覆盖了片段内的 onPause 并且我有一些特定的行为。部署后,即使我完全杀死应用程序并重新打开它,也不会再发生这种情况。这有什么意义?提前谢谢了。

android android-lifecycle android-fragments android-viewpager fragmentpageradapter

5
推荐指数
0
解决办法
389
查看次数

自定义 selectableItemBackground

我正在使用 RecyclerView 作为列表。我找到了一个非常好的解决方案来提供列表点击反馈和涟漪(在棒棒糖上)。基本上我给我的行布局属性:

android:background="?android:attr/selectableItemBackground"
Run Code Online (Sandbox Code Playgroud)

一切都很好,除了我的列表需要不同的背景颜色(默认状态)。如何仅覆盖基本状态背景(未单击)并为其赋予不同的颜色?

android android-styles android-recyclerview

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

IAB订阅免费试用状态

管理免费试用订阅状态的正确方法是什么?我找不到任何关于在json信息中获取购买状态的信息,例如freeTrial = true/false或freeTrialDuration = 7.当用户通过免费试用购买订阅时,会发生交易吗?免费试用期到期后的下一步是什么?一项新交易?

android in-app-purchase in-app-billing in-app-subscription

5
推荐指数
0
解决办法
181
查看次数

Android 模拟器顶部不可点击

我正在使用:

Mac OS High Sierra 10.13.4
Android Studio 3.1.1
Nexus 5X emulator with API level 27
Run Code Online (Sandbox Code Playgroud)

在其顶部,模拟器不可点击或可拖动,我只是无法下拉通知栏或点击应用程序中的后退按钮。这不会发生在模拟器的底部……有人遇到过同样的问题吗?我不知道这是否有用,但我使用的是双显示器(macbook + led 面板)。

编辑:我认为较小的设备存在问题。Pixel 2(不是 XL)也有同样的问题。适用于 Pixel 2 XL。

编辑 2:Pixel 2 在 API 级别 25(牛轧糖)上运行良好。

macos android android-emulator android-studio android-8.1-oreo

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

Flexboxlayout 以编程方式设置项目之间的间距

我有这个 Flexboxlayout 定义(官方 Google 库):

<com.google.android.flexbox.FlexboxLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:dividerDrawableHorizontal="@drawable/flexboxlayout_divider"
    app:flexWrap="wrap"
    app:justifyContent="space_between"
    app:showDividerHorizontal="middle">
Run Code Online (Sandbox Code Playgroud)

现在我想以编程方式创建相同的内容:

FlexboxLayoutManager flexboxLayoutManager = new FlexboxLayoutManager(activity);
flexboxLayoutManager.setFlexDirection(FlexDirection.COLUMN);
flexboxLayoutManager.setJustifyContent(JustifyContent.SPACE_BETWEEN);
flexboxLayoutManager.setFlexWrap(FlexWrap.WRAP);
myRecyclerView.setLayoutManager(flexboxLayoutManager);
Run Code Online (Sandbox Code Playgroud)

我缺少的是app:dividerDrawableHorizontalapp:showDividerHorizontal属性,并且没有找到任何方法来设置它们。

android android-layout android-recyclerview android-flexboxlayout

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

Gson阵列反序列化

我有以下JSON结构:

[
 {
  "id": 1,
  "subcategories": [
   {
    "id": 2,
    "subcategories": [
    ]
   },
   {
    "id": 3,
    "subcategories": [
    ]
   }
  ]
 },
 {
  "id": 4,
  "subcategories": [
   {
    "id": 5,
    subcategories: [
    ]
   }
  ]
 }
]
Run Code Online (Sandbox Code Playgroud)

为了反映JSON结构,类别的模型类(为了简单起见,省略了一些像title这样的字段):

public class Category {
    int id = 0;
    ArrayList<Category> subCategories = null;
}
Run Code Online (Sandbox Code Playgroud)

我正在尝试用Gson库解析它(2.2.4),很难将内部数组反序列化为arraylist:

Gson gson = new Gson();
Type collectionType = new TypeToken<ArrayList<Category>>(){}.getType();
ArrayList categories = gson.fromJson(json, collectionType);
Run Code Online (Sandbox Code Playgroud)

Category.subCategories始终为null.

android json arraylist gson json-deserialization

3
推荐指数
1
解决办法
3856
查看次数

处理动态表格

我有一个JS动态表单,我可以添加或删除字段:

Field 1
Field 2
Field 3
Field 4
Run Code Online (Sandbox Code Playgroud)

现在,如果我删除Field 2并添加一个新字段:

Field 1
Field 3
Field 4
Field 5
Run Code Online (Sandbox Code Playgroud)

我是通过表单元素中的Ajax POST发送的.我的问题是服务器端PHP处理.我怎么知道$ _POST数组中有多少个字段,它们的ID是什么?我正在使用"field"+ counterIndex生成唯一ID,但是按照示例我怎样才能理解我总共有4个字段并且缺少2个字段?顺便说一句,在表单内部我也有静态字段.

javascript php forms ajax server-side-validation

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

相当于 PHP gmdate

我正在尝试签署 Amazon 请求,并且需要以下时间戳格式:

gmdate('Y-m-d\TH:i:s\Z');
Run Code Online (Sandbox Code Playgroud)

如何在 nodejs 环境中获得它?提前谢谢了。

javascript date date-format node.js

0
推荐指数
1
解决办法
1961
查看次数

Docker 命名卷

在 docker compose v3 中混合使用和不使用本地主机路径的命名卷的正确方法是什么?这样我就收到 YML 错误:

volumes:
  /mnt/volume-part1:/volume
  conf:
  vhost:
  html:
  certs:
Run Code Online (Sandbox Code Playgroud)

然后我想参考容器内的体积......

docker docker-compose docker-volume

0
推荐指数
1
解决办法
1638
查看次数