小编Sev*_*ver的帖子

onActivityCreated 已弃用,如何正确使用 LifecycleObserver?

Google 在 Android 上弃用 fragment 的 onActivityCreated() 并推荐使用 LifeCycleObserver:

 To get a callback specifically when a Fragment activity's
     * {@link Activity#onCreate(Bundle)} is called, register a
     * {@link androidx.lifecycle.LifecycleObserver} on the Activity's
     * {@link Lifecycle} in {@link #onAttach(Context)}, removing it when it receives the
     * {@link Lifecycle.State#CREATED} callback.
Run Code Online (Sandbox Code Playgroud)

所以我尝试以推荐的方式制作它,但我只能在 Logcat 中观察到的状态只是State: INITIALIZED

 private lateinit var lifecycleObserver: LifecycleObserver

 override fun onAttach(context: Context) {
    super.onAttach(context)

    hostActivity = context as HostActivity

    lifecycleObserver = object : LifecycleObserver {

        @OnLifecycleEvent(Lifecycle.Event.ON_CREATE)
        fun onCreate() {
            Logger.tag("SOME-TAG")d("State: …
Run Code Online (Sandbox Code Playgroud)

android android-lifecycle android-fragments android-activity

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

对象存储和文件存储之间的区别

有人可以解释对象存储和文件存储之间有什么区别吗?

我在维基上阅读了关于对象存储的内容,我也阅读了http://www.dell.com/downloads/global/products/pvaul/en/object-storage-overview.pdf,我也阅读了amazons docs(S3),openstack swift等等.但是有人能举个例子来更好地理解吗?

所有不同之处仅在于"对象存储"对象我们添加了更多元数据?

例如,如何使用某种编程语言(例如python)存储像对象一样的图像?

谢谢.

storage object persistent-object-store

27
推荐指数
5
解决办法
3万
查看次数

IOS 17 上的 .searchable SwiftUI 导致错误:无效数值

模拟器:带有 IOS 17 的 iPhone 15 Xcode:版本 15.0 (15A240d)

刚刚创建的项目的简单示例:

import SwiftUI

struct ContentView: View {
    @State private var searchText = ""

      var body: some View {
          NavigationStack {
              Text("Searching for \(searchText)")
                  .navigationTitle("Searchable Example")
          }
          .searchable(text: $searchText)
      }
}

#Preview {
    ContentView()
}
Run Code Online (Sandbox Code Playgroud)

当开始点击任何文本时抛出:

错误:此应用程序或其使用的库已将无效的数值(NaN 或非数字)传递给 CoreGraphics API,并且该值将被忽略。请解决这个问题。

单击并取消启动后,每次单击都会显示以下错误:

-[RTIInputSystemClient remoteTextInputSessionWithID:performInputOperation:] 执行输入操作需要有效的sessionID

有人知道如何修复吗?

我在苹果论坛https://developer.apple.com/forums/thread/731700上找到了一个帖子,但一如既往地没有来自开发人员的单一答案。

iphone ios-simulator swiftui xcode15 ios17

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

在PreferenceScreen中设置文本的自定义字体

我的PreferenceActivity看起来像:

import android.os.Build;
import android.os.Bundle;
import android.preference.PreferenceActivity;
import android.preference.PreferenceFragment;
import android.widget.TextView;

public class Settings extends PreferenceActivity {

    @SuppressWarnings("deprecation")
    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
            super.onCreate(savedInstanceState);

            //setContentView(R.layout.about);

            Typeface timesFont = Typeface.createFromAsset(getAssets(), "fonts/times.ttf");

            TextView about_txt = (TextView) findViewById(R.id.about_txt);        
            about_txt.setTypeface(timesFont);
            about_txt.setText(R.string.about_txt);


            if (Build.VERSION.SDK_INT<Build.VERSION_CODES.HONEYCOMB)
            {
                addPreferencesFromResource(R.xml.preferences);
            } else {
                // Display the fragment as the main content.
                getFragmentManager().beginTransaction().replace(android.R.id.content,
                        new PrefsFragment()).commit();
            }
    }

    public static class PrefsFragment extends PreferenceFragment 
    {
            @Override
            public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);

                // Load the preferences from an XML resource …
Run Code Online (Sandbox Code Playgroud)

android preferenceactivity android-preferences

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

在简单情况下使用反应式编程的原因

请有人可以解释一下使用反应式样式的优点:

Observable<String> greeting = Observable.just("Hello");
Observable<String> yelling = greeting.map(s -> s.toUppercase());
Run Code Online (Sandbox Code Playgroud)

而不是简单的命令式样式:

String greeting = "Hello";
String yelling = greeting.toUppercase();
Run Code Online (Sandbox Code Playgroud)

我了解响应式编程,例如用于数据库访问,UI,计算,网络访问等的“ API”。但是为什么我们需要使用响应式编程来简化 toUppercase

imperative-programming reactive-programming rx-java rx-java2

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

不推荐使用ProjectLayout.directoryProperty()方法

更新到gradle 5.2.1之后

此构建中使用了不推荐使用的Gradle功能,使其与Gradle 6.0不兼容。

所以我跑 ./gradlew :app:clean --warning-mode all

我在控制台中有警告:

不推荐使用ProjectLayout.directoryProperty()方法。计划在Gradle 6.0中将其删除。请改用ObjectFactory.directoryProperty()方法。

不推荐使用ProjectLayout.fileProperty()方法。计划在Gradle 6.0中将其删除。请改用ObjectFactory.fileProperty()方法。

即使它是一个没有库的新创建的空Android项目。也搜索ProjectLayout不会给出任何结果。

PS我已经知道它的警告,而不是错误。但是我只需要再次知道gradle有什么问题。

android gradle gradlew android-gradle-plugin

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

隐藏ActionBarSherlock标题并仅显示徽标

我需要在ActionBarSherlock上隐藏标题并仅显示徽标.

当我使用actionBar.setDisplayShowTitleEnabled(false);图标也隐藏.

更新:谢谢大家,但我找到了解决方案.问题可能已经结束

styles.xml中:

<style name="FooBar" parent="Theme.Sherlock.Light">
         <item name="android:actionBarStyle">@style/FooBar.ActionBar</item>
         <item name="actionBarStyle">@style/FooBar.ActionBar</item>
    </style>

    <style name="FooBar.ActionBar" parent="Widget.Sherlock.Light.ActionBar">
        <item name="android:displayOptions">showHome|useLogo</item>
        <item name="displayOptions">showHome|useLogo</item>
    </style>
Run Code Online (Sandbox Code Playgroud)

AndroidManifest.xml中:

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/FooBar"
    android:allowBackup="true">
Run Code Online (Sandbox Code Playgroud)

android actionbarsherlock android-actionbar

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

严格模式ViewActivity;实例=2;极限=1

我的 FragmentActivity 上有一个 Gridview,其中包含 Fragment 中的图像。

Gridview onItemClick 我调用 Activity

Intent intent = new Intent(getSherlockActivity(), ViewActivity.class);
                intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
                intent.putExtra("PREVIEW_IMG_ID", imagesIDs.get(pos));
                startActivity(intent);  
Run Code Online (Sandbox Code Playgroud)

在第一次 ViewActivity 回压时,一切似乎正常,但第二次单击 Gridview onItemClick 时,当我设置严格模式时,ViewActivity 回压返回错误:

StrictMode ViewActivity; instances=2; limit=1 and app died.
Run Code Online (Sandbox Code Playgroud)

为什么会这样?我可以防止错误或只是忽略吗?

查看活动

import android.app.Activity;
import android.os.Bundle;

import com.bugexplorer.wallpapers.R;

public class ViewActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_view);

    }     

}
Run Code Online (Sandbox Code Playgroud)

android android-activity android-strictmode

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

Android R8 片段实现但实际上匹配扩展

目前使用的版本是: androidx.fragment:fragment-ktx: 1.2.1。当我尝试构建发布版本时,proguard (R8) 显示如下警告:

R8: The rule `-neverclassinline public class ** implements androidx.fragment.app.Fragment` uses implements but actually matches extends.

R8: The rule `-keep public class ** implements androidx.fragment.app.Fragment {
  public <init>();
}` uses implements but actually matches extends.
Run Code Online (Sandbox Code Playgroud)

我没有在错误跟踪器上找到任何相关问题。可能是什么原因,我该如何解决?

android proguard android-fragments android-r8 androidx

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

C# 从 Form1 中的静态方法获取现有 Form1 实例

我知道这是一个很简单的问题,但没有人能给出简单的答案。

从 Form1 中的静态方法获取现有的 Form1 实例

public partial class Form1 : Form
{
    public Form1()
    {
      InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        callMethod();           
    }

    public static void callMethod()
    {
       // how can get existing Form1 instance here ?             
       statusLabel.Text = "test";
    }
}
Run Code Online (Sandbox Code Playgroud)

拜托,为什么我需要这个并不重要,重要的是知道如何。

c# oop static-methods instance

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

在 bash 脚本的后台 (&amp;) 中无限循环运行的 PID

我有简单的 bash 脚本

#!/bin/bash

(while true; do
        true;
        sleep 3
done) &
Run Code Online (Sandbox Code Playgroud)

如何将这个循环的 pid 分配给变量,以便将来终止进程?我尝试陷阱,但循环有自己的 pid 所以我应该知道在后台运行的循环的 pid 以杀死它,例如在 SIGTERM 之后。

linux bash operating-system

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

Android 中心约束

我有 60% 从顶部和 LinearLayout 的指南,底部约束到该指南(所以我的 LinearLayout 将占屏幕的 60%)。现在我需要把 CardView 的一半放在那个 LinearLayout 的底部(添加了截图)。

CardView 的高度是 wrap_content,因为会动态添加,所以我不知道高度并且不能使用像边距底部 -50dp 这样的东西。

这就是我所拥有的:

这就是我所拥有的

我需要这样的东西:

在此处输入图片说明

我找不到像受中心约束那样的未来。请问你能帮帮我吗。

android android-constraintlayout

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

android.car 包在 Android Studio 中不可用

无法访问android.car包。

添加useLibrary 'android.car'到应用程序模块的 build.gradle 后,它开始在模拟器上构建和运行,但 Android Studio 仍然无法访问和/或显示它们。

import android.car.Car
import android.car.VehiclePropertyIds
import android.car.hardware.CarPropertyValue
import android.car.hardware.property.CarPropertyManager
Run Code Online (Sandbox Code Playgroud)

Android Studio 版本:

  1. 花栗鼠 2021.2.1 | 补丁1
  2. 电鳗| 2022.1.1 金丝雀2

Android SDK:29、30、31、32

我该如何解决它。或者以某种方式添加 android.car.jars。因为不高亮和导入包就无法正常开发。

android android-studio android-automotive

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