小编Sai*_*Sai的帖子

如何向 DividerItemDecoration Android 添加边距开始

我使用下面的代码将分隔线添加到我的列表中。但我的问题是如何将 margin_start 添加到这些分隔线中,以便它看起来像所附图像。预先感谢。

DividerItemDecoration dividerItemDecoration = new DividerItemDecoration(recyclerView.getContext(),
    layoutManager.getOrientation());
recyclerView.addItemDecoration(dividerItemDecoration);
Run Code Online (Sandbox Code Playgroud)

样本

android

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

取消测试订阅在 Android 中无法正常工作

我知道 Google 最近更新的测试订阅更新比平时更快,以帮助测试。例如:1 个月 - 5 分钟。https://android-developers.googleblog.com/2018/01/faster-renewals-for-test-subscriptions.html

我购买了一个订阅,一分钟内我取消了它,我等了 5 到 10 分钟,然后我查询了订阅,mBillingClient.queryPurchases("subs")但我仍然可以在结果中看到被取消的项目,购买状态为 0(已购买)。我尝试了多次,在 queryPurchases 之前有超过 10-15 分钟的间隔,但没有运气。

即使经过漫长的等待,我也不知道为什么取消的商品会显示在购买中。

后来我注意到如果我清除 Playstore 数据和缓存,一切都会暂时有效。1 小时后,如果我尝试购买它显示的相同产品Error retrieving information from server[RPC:S-7:AEC-500 NWDB-WFVV-ZPAXE]

这是我们必须测试取消订阅的方式吗?如果我再次购买订阅,会出现什么错误?

在此处输入图片说明

android android-billing android-inapp-purchase

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

使用其值获取枚举常量

我试图使用它的值获得枚举,但它会抛出一个错误说No enum constant.例如代码在Kotlin中,但它在Java中是相同的,提前感谢.

import java.util.*

enum class TaskAction constructor(val value: String) {
    ARCHIVE("Archive"), UN_FLAG("Un flag"), FLAG("Flag"), REDO("Redo"),
    READY("Ready"), EDIT("Edit"), DND("dnd"), DELETE("Delete"),
    IN_PROGRESS("In progress"), DONE("Done");
}


fun main(args: Array<String>) {
    showSomeThing(TaskAction.UN_FLAG.value)
}

fun showSomeThing(enum: String) {
    println(TaskAction.valueOf(enum))
}
Run Code Online (Sandbox Code Playgroud)

日志:

线程"main"中的异常java.lang.IllegalArgumentException:没有枚举常量TaskAction.Un标志

java enums kotlin

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

将文件发送到Http时,OutputStream内存不足错误

较小的文件会成功上传到服务器,但当它来到较大的文件时,下面的代码会抛出内存不足错误.任何解决方案 .提前致谢.

public void addFilePart(String fieldName, File uploadFile)
                throws IOException {
            String fileName = uploadFile.getName();
            writer.append("--" + boundary).append(LINE_FEED);
            writer.append(
                    "Content-Disposition: form-data; name=\"" + fieldName
                            + "\"; filename=\"" + fileName + "\"")
                    .append(LINE_FEED);
            writer.append(
                    "Content-Type: "
                            + URLConnection.guessContentTypeFromName(fileName))
                    .append(LINE_FEED);
            writer.append("Content-Transfer-Encoding: binary").append(LINE_FEED);
            writer.append(LINE_FEED);
            writer.flush();

            FileInputStream inputStream = new FileInputStream(uploadFile);
            byte[] buffer = new byte[4096];
            int bytesRead = -1;
            while ((bytesRead = inputStream.read(buffer)) != -1) {
                outputStream.write(buffer, 0, bytesRead);
            }
            outputStream.flush();
            inputStream.close();

            writer.append(LINE_FEED);
            writer.flush();
        }
Run Code Online (Sandbox Code Playgroud)

java android android-file

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

如何从Fragment Android中禁用或隐藏抽屉布局

我的应用程序中有10个不同的片段.我需要在几个片段中隐藏导航抽屉(抽屉布局),如何从片段中访问抽屉布局并隐藏它?我知道我们需要在活动中使用mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);但是如何在片段中使用它?

android

3
推荐指数
2
解决办法
5761
查看次数

如何删除字符串中除点和逗号以外的所有特殊字符

我有一个包含许多特殊字符和文本的句子,我想删除除点和逗号之外的所有特殊字符。

例如,这是什么:

[u' %$HI# Jhon, $how$ are *&$%you.%$
Run Code Online (Sandbox Code Playgroud)

我正在尝试生成以下字符串:

HI Jhon, how are you.
Run Code Online (Sandbox Code Playgroud)

我试过这个

("[u' %$HI# Jhon, $how$ are *&$%you.%$").replaceAll("[^a-zA-Z]+","");
Run Code Online (Sandbox Code Playgroud)

但它也删除了逗号和点。我想要逗号和点在那里。

最后我找到了解决方案:

Python:

import re

my_str = "[u' %$HI# Jhon, $how$ are *&$%you.%$"
my_new_string = re.sub('[^.,a-zA-Z0-9 \n\.]', '', my_str)
print (my_new_string)
Run Code Online (Sandbox Code Playgroud)

爪哇:

("[u' %$HI# Jhon, $how$ are *&$%you.%$").replaceAll("[^ .,a-zA-Z0-9]");
Run Code Online (Sandbox Code Playgroud)

谢谢大家。我不知道我的问题有什么问题,没有自由提问。:-(

java android

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

如何在Android中全局更改首选项图标的颜色

我已经为所有“首选项”设置了平面图标,我想全局更改该图标的颜色。

当我尝试以下代码时,它甚至会更改工具栏中的后退按钮颜色。

我只希望全局更改“首选项”图标的色调。预先感谢。

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">

    <SwitchPreference
        android:id="@+id/pref_toggle_alarm"
        android:icon="@drawable/ic_pref_notifications"
        android:key="key_toggle_alarm"
        android:summaryOff="Alarm OFF"
        android:summaryOn="Alarm ON"
        android:title="Alarm" />


    <web.prefs.TimePrefs
        android:id="@+id/pref_select_time"
        android:icon="@drawable/ic_pref_time"
        android:key="key_time"
        android:summary="Set some time"
        android:title="Select Time" />

    <MultiSelectListPreference
        android:id="@+id/pref_select_week"
        android:defaultValue="@array/week_array_values"
        android:entries="@array/array_week_selection"
        android:entryValues="@array/week_array_values"
        android:icon="@drawable/ic_pref_time"
        android:key="key_week"
        android:title="Select Days" />

    <ListPreference
        android:id="@+id/pref_track"
        android:defaultValue="0"
        android:entries="@array/tracks_arrays"
        android:entryValues="@array/tracks_arrays_values"
        android:icon="@drawable/ic_music_note"
        android:key="key_track"
        android:summary="%s"
        android:title="Select Track" />

</PreferenceScreen>
Run Code Online (Sandbox Code Playgroud)

style.xml

<style name="PreferencesTheme" parent="@style/AppTheme.NoActionBar">
    <item name="android:textColorPrimary">@color/primary_text</item>
    <item name="android:textColorSecondary">@color/secondary_text</item>
    <item name="android:colorAccent">@color/accent</item>
    <item name="android:tint">@color/accent</item>
</style>
Run Code Online (Sandbox Code Playgroud)

android android-preferences

3
推荐指数
2
解决办法
1790
查看次数

android上的Notification Manager问题

我正在尝试使用按钮进行通知,但不推荐使用Notification和setLatestEventInfo.

两个错误:

1.建议者Notification(int,CharSequence,long)已弃用 Notification notify = new Notification(android.R.drawable.stat_notify_more, "Hello all", System.currentTimeMillis());

2. setLatestEventInfo(Context, CharSequence, CharSequence, PendingIntent)通知类型中的方法不适用于参数(Context, CharSequence, CharSequence, Intent) notify.setLatestEventInfo(context, title, details, intent);

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Button b = (Button) findViewById(R.id.button1);
    b.setOnClickListener(new View.OnClickListener() {   
        @Override
        public void onClick(View v) {
            NotificationManager ns = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
            Notification notify = new Notification(android.R.drawable.stat_notify_more, "Hello all", System.currentTimeMillis());
            Context context = MainActivity.this;
            CharSequence title ="you have be notified";
            CharSequence details = "Continue …
Run Code Online (Sandbox Code Playgroud)

notifications android notify notificationmanager

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

+ =之间的差异并添加到Kotlin中的MutableList

细算+=到mutableList,我无法弄清楚它是什么立刻,我想象中i = i+1,其中i是一个整数,这没有任何意义在下面的代码,但调试我意识到那只是将项目添加到列表中后,所以我的问题是它+=用于将项目添加到列表而不仅仅是使用mutableList.add(item)有什么不同,至少在我的情况下,它更易读.预先感谢.

musicSource.forEach { mediaItem ->
            val albumMediaId = mediaItem.album.urlEncoded
            val albumChildren = mediaIdToChildren[albumMediaId] ?: buildAlbumRoot(mediaItem)
            albumChildren += mediaItem
        }
Run Code Online (Sandbox Code Playgroud)

kotlin

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

Android上的Try and Catch问题

一旦我执行下面的代码,媒体播放60秒,我的应用程序关闭,出现错误"不幸的是,YourAPP已经停止." .如果我删除"bv.setImageResource(R.drawable.play);" 在最后阻止,该应用程序完美.

bv.setImageResource(R.drawable.play)在finally块上有什么问题?

这是我的代码

bv = (ImageButton) findViewById(R.id.imageButton1);
private void mpsleep() {
    mp.start();
    Thread timer= new Thread(){
        public void run(){
            try{
                for (i =1;i<60;i++){
                    sleep(1000);//1 second pause
                }
            }catch(Exception e){
                e.printStackTrace();
            }finally{
                mp.pause();
                mp.seekTo(0);
                bv.setImageResource(R.drawable.play);
            }
        }
    };
    timer.start();
}
Run Code Online (Sandbox Code Playgroud)

logcat的

03-06 11:03:39.743: V/MediaPlayer(31802): message received msg=4, ext1=0, ext2=0
03-06 11:03:39.743: V/MediaPlayer(31802): Received seek complete
03-06 11:03:39.743: V/MediaPlayer(31802): All seeks complete - return to regularly scheduled program
03-06 11:03:39.743: V/MediaPlayer(31802): callback application
03-06 11:03:39.743: V/MediaPlayer(31802): back from callback
03-06 …
Run Code Online (Sandbox Code Playgroud)

android caching finally try-catch try-catch-finally

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

Dagger注入超类和子类

BaseFragment类

open class BaseFragment : Fragment() {

    @Inject lateinit var apiManager: ApiManager
    @Inject lateinit var eventBus: EventBus

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        App.getInstance().component.inject(this)
    }

    override fun onStop() {
        eventBus.unreg(this)
        super.onStop()
    }

    override fun onStart() {
        super.onStart()
        eventBus.reg(this)
    }
}
Run Code Online (Sandbox Code Playgroud)

RoomsFragment类

class RoomsFragment : BaseFragment() {

    @Inject lateinit var roomAdapter: RoomsAdapter

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        App.getInstance().component.inject(this)
    }

    override fun onCreateView(inflater: LayoutInflater?, container: ViewGroup?, savedInstanceState: Bundle?): View? {
        return inflater?.inflate(R.layout.fragment_rooms_fragment_new, container, false)
    }

    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState) …
Run Code Online (Sandbox Code Playgroud)

android kotlin dagger-2

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

一个textview数据绑定android中的名字和姓氏

如何在数据绑定中连接字符串.我想显示firstName和lastName是相同的TextView.任何帮助都要提前感谢.

<data>

    <variable
        name="task"
        type="com.myapp.app.Task" />
</data>

<TextView
    android:id="@+id/name"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="6dp"
    android:drawablePadding="6dp"
    android:ellipsize="end"
    android:gravity="center"
    android:maxLines="1"
    android:text="@={task.assignedTo.firstName}"//how to include lastname
    android:textColor="@color/textBlack"
    android:textSize="14sp"
    tools:text="Saikiran" />
Run Code Online (Sandbox Code Playgroud)

android android-databinding

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

如何使用MediaPlayer类重复x次的特定歌曲

我的代码就是这个

        bv.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            if(mp.isPlaying()){
                mp.pause();
                bv.setImageResource(R.drawable.playzz);
            } else {
                bv.setImageResource(R.drawable.pausezz);
                for (int i=1; i<=10 ; i++){
                mp.start();
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

我想重复一首歌只有10次.我用于循环,但声音只播放一次并停止.知道如何做到这一点?提前致谢.

android repeat media-player

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