小编Sha*_*ron的帖子

如何在类和使用它的片段之间进行通信?

我正在使用Android Studio.我无法在线找到答案,因此即使是解决方案的链接也会有所帮助.

我有一个Activity,其中包括许多碎片.调用BookGridFragment其中一个片段,它使用一个名为的类BookGrid.

BookGridFragment 看起来像这样(我遗漏了不相关的位):

public class BookGridFragment extends Fragment {

    BookGrid myBookGrid;

    public BookGridFragment() {}

    @Override
    public View onCreateView(LayoutInflater inflater,
                             ViewGroup container, Bundle savedInstanceState) {
        super.onCreateView(inflater, container, savedInstanceState);

        // Inflate layout
        View rootView = inflater.inflate(
                R.layout.fragment_book_grid, container, false);

        myBookGrid = rootView.findViewById(book_grid);

        return rootView;
    }

    public void setBook(Book thisBook) {
        myBookGrid.setBook(thisBook);
    }
}
Run Code Online (Sandbox Code Playgroud)

BookGrid堂课是:

public class BookGrid extends View {

    private Book mBook;

    public BookGrid(Context thisContext, AttributeSet attrs) {
        super(thisContext, attrs);
    } …
Run Code Online (Sandbox Code Playgroud)

java android android-fragments

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

如何在HTML片段中找到文本节点?

我正在尝试使用PHP DOM函数解析HTML代码段.除了段落,跨度和换行符之外,我已经删除了所有内容,现在我想要检索所有文本及其附带的样式.

所以,我想逐一获取每一段文字,然后我可以回到树上获取特定属性的值(我只对一些特定的文本感兴趣,比如颜色等等) ).

我怎样才能做到这一点?或者我是否以错误的方式思考它?

谢谢!

php dom

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

如何保存可拖动和可调整元素的位置?

我正在构建一个网站,允许用户创建一个html页面,然后可以在另一个站点上保存和共享.我希望他们能够调整大小并拖动页面元素.我可以使用jQuery做到这一点,但我不知道如何保存它,以便在其他地方查看页面时,它看起来是一样的.

我还没有决定如何存储页面信息,但我在想的是我可以将每个元素与其绝对位置及其内容一起存储在数据库中.这听起来像个好计划吗?

如果是这样,我如何获得div的位置传递给php,以便它可以保存?

谢谢.

jquery-ui jquery-ui-resizable jquery-ui-draggable

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

Android Studio:“无法获得‘adb 版本’的结果”

我目前无法在 Android Studio 上进行应用测试,我不知道下一步该怎么做。当我尝试运行模拟器时,我一直收到错误“无法获得‘adb 版本’的结果”。我认为我没有更改系统上的任何内容来实现它,尽管我通常会更新 Android Studio 推荐的任何软件包。我用谷歌搜索过,这给了我很多尝试,但我没有进一步。我尝试了以下方法:

  • 卸载并重新安装平台工具 - 我什至下载了 23 版(我目前是 24 版)并用它替换了 24 版,但这没有用。

  • 卸载并重新安装 Android Studio - 这工作了一天,但需要几个小时,所以我不能每次都这样做。

  • 检查 adb.exe 是否存在且路径是否正确等。 - adb.exe 存在于 C:\Users\My Name\AppData\Local\Android\sdk\platform-tools 中,看起来没问题。

  • 防病毒软件阻止 adb.exe - 关闭防火墙;没有帮助。

  • 从命令行运行 adb - 运行正常,但是当我输入“adb devices”时,我得到一个空列表。如果我进入 Android Studio 并从 AVD 管理器手动启动设备,然后再次执行“adb devices”,这次运行的设备会出现

  • “where adb”的位置似乎是正确的 - 我想知道 Android Studio 是否在错误的地方寻找它。有没有办法检查路径?

  • 转到平台工具文件夹并输入“adb tcpip 5555” - 它说它正在启动守护程序,然后它已成功启动,但这仍然没有帮助

  • 禁用“启用 ADB 集成”选项,然后重新启用它。没有帮助。然后尝试在禁用/启用之间从命令行终止 adb 服务器。也尝试在两者之间重新启动 AS,仍然没有帮助。

我现在卡住了,我不知道还能尝试什么。有人会建议我可以尝试的其他东西吗?

另外,我认为我可以使用命令行临时将应用程序推送到设备,但如果我只是测试,我不确定要推送什么,因为我没有 apk 文件(我认为)。我会将哪个文件推送到模拟器?我该怎么做?模拟器似乎被称为 emulator-5554。

我使用的是 Windows 10,并且已升级到最新的 Android Studio (2.1.3)。

adb android-studio

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

如何在 Flutter/Android Studio 中编辑运行配置?

我在 Flutter 中创建了一个应用程序并且它运行良好,但是我调整了一些东西,当我尝试在模拟器上调试它时,弹出一个新窗口,我认为它被称为“配置编辑器”或其他东西。我不知道如何处理它,但没有它应用程序将无法运行,所以我在其中一个字段中输入了一些随机数据,看看会发生什么。

现在 Android Studio 似乎正在尝试使用这些数据运行应用程序,但它不会运行。我收到错误:

Target file "4,6,8" not found.
Run Code Online (Sandbox Code Playgroud)

其中“4,6,8”是我输入的数据。我想我需要再次清空这些字段,但我不知道如何打开配置文件或我输入数据的任何地方!

flutter

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

如何从 C 调用 C++ 函数?

我正在编写一个需要使用特定 api 的 C 程序(myapp);api 是用 C++ 编写的。我使用过 C 和 C++,但从来没有同时使用过,而且我很困惑。

因此,api 提供了以下目录,我将其放置在名为 include 的文件夹中,与我的 makefile 处于同一级别:

libmyapi.a
api/api.h
Run Code Online (Sandbox Code Playgroud)

我的主要源文件是 src/myapp.c,它包含使用#include "api/api.h".

我的 make 命令是(加上一些标志,我没有列出,因为我认为它们在这里不相关):

gcc  -Linclude -lmyapi -Iinclude  src/myapp.c -o lib/myapp.sp -lrt
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是 api.h 文件包含对命名空间等的引用。例如,在某一时刻它具有:

namespace MyAPI {
  namespace API {
    typedef SimpleProxyServer SimpleConnection;
  }
}
Run Code Online (Sandbox Code Playgroud)

显然 C 编译器不知道这意味着什么。

所以,我假设我需要使用 C++ 编译器进行编译,但后来有人说我没有,我可以将代码“包装”在“extern 'C'”中,但我真的不明白。在线阅读后,我不再继续。

我是否需要用 C++ 编译(即使用 g++)?

我是否需要“包装”代码,这意味着什么?我只是做

#ifdef __cplusplus
  extern "C" {
    namespace MyAPI {
      namespace API {
        typedef SimpleProxyServer SimpleConnection;
      }
    }
  }
#endif
Run Code Online (Sandbox Code Playgroud)

还是我只是换行 …

c c++

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

在 Recharts 中,如何仅显示轴上的第一个和最后一个刻度?

我有一个包含 14 个数据点的 Recharts LineChart(尽管将来这可能会有所不同,所以理想情况下我不想对其进行硬编码)。我想在 X 轴上显示 2 个刻度值 - 第一个和最后一个。

所以我有:

<LineChart width={100} height={50} data={lineData}>
  <Line type="monotone" dataKey="data" dot={false} />
  <XAxis />
</LineChart>
Run Code Online (Sandbox Code Playgroud)

其中 lineData 是:

"lineData": [
  { "data": 43.0 },
  { "data": 44.5 },
  { "data": 45.0 },
  { "data": 41.0 },
  { "data": 35.0 },
  { "data": 32.0 },
  { "data": 24.0 },
  { "data": 18.0 },
  { "data": 21.0 },
  { "data": 26.0 },
  { "data": 32.0 },
  { "data": 46.0 },
  { "data": 44.0 …
Run Code Online (Sandbox Code Playgroud)

recharts

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

如何在 React Native Android 应用程序中处理产品风味?

我的 React Native 应用程序有 3 个版本:App1、App2、App3。每个都有开发版本和产品版本。

我已在 android/app/build.gradle 中进行了如下设置:

flavorDimensions "client", "backend"
    productFlavors {
        app1 {
            applicationId="com.app1name"
            dimension "client"
        }
        app2 {
            applicationId="com.app2name"
            dimension "client"
        }
        app3 {
            applicationId="com.app3name"
            dimension "client"
        }
        dev {
            dimension "backend"
        }
        prod {
            dimension "backend"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

然后我设置了 android/app/src 文件夹,如下所示:

src
-- main
   -- assets
   -- java
      -- com
         -- app1name
            MainActivity.java
            MainApplication.java  
    -- res
    AndroidManifest.xml
Run Code Online (Sandbox Code Playgroud)

但我不确定将其他应用程序文件夹放在哪里,而且我尝试的任何方法似乎都不起作用。我试过了:

src
-- app2name
   -- assets
   -- java
      -- com
         MainActivity.java
         MainApplication.java  
    -- res
    AndroidManifest.xml
Run Code Online (Sandbox Code Playgroud)

(app3 也一样) …

android react-native android-flavordimension android-flavors

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

如何在不重建的情况下在 CKEditor 中添加或删除插件?

我刚刚开始使用 CKEditor 4(很久以前使用过版本 1)。我喜欢我可以在线构建并下载它,但是当我这样做时,我然后使用工具栏配置工具来设置我的工具栏。

如果我以后想添加或删除特定插件会怎样?我是否必须使用构建工具构建一个全新的 CKEditor,然后下载它来替换现有的,然后重新配置我的工具栏?我真的不想每次都重新配置工具栏。

有几个插件我可能想稍后使用,所以我只是想弄清楚我现在是否需要包含它们,或者我以后可以轻松添加它们吗?

ckeditor ckeditor4.x

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

在 Recharts 中,如何更改 y 轴刻度标签?

我有以下图表:

<ResponsiveContainer width="100%" height={300}>
  <LineChart data={displayData}>
    <XAxis
      dataKey="date"
    />
    <YAxis
      interval="preserveStartEnd"
      domain={[0, domainMax]}
    />
    <Line
      type="linear"
      dataKey={key}
    />
  </LineChart>
</ResponsiveContainer>
Run Code Online (Sandbox Code Playgroud)

在大多数情况下,这很好,并且 y 轴显示适当的刻度线范围。但是,对于一种特定类型的数据,我需要更改它。如果我有这种类型(由名为“itemType”的变量指示),那么所有数据值都将为 0 或 1;我希望 y 轴标签为“否”(而不是 0)和“是”(而不是 1)。

我认为我可以使用“tick”的自定义值来做到这一点,例如

 <YAxis interval="preserveStartEnd" domain={[0,domainMax]} tick={<CustomYAxisTick type={itemType} />} />
Run Code Online (Sandbox Code Playgroud)

在哪里

CustomYAxisTick是这样的:

const CustomYAxisTick= ({ x, y, payload, itemType }: any) => {
  if (itemType ==="BOOLEAN") {
    if(payload.value === 0) return <text>No</text>;
    if(payload.value === 1) return <text>Yes</text>;
    return null;
  }else {
    return (<text>{payload.value}</text>);
  }
})
Run Code Online (Sandbox Code Playgroud)

但当我尝试这个时,它不起作用(我在 x 轴上有类似的东西,效果很好)。

有办法实现这一点吗?基本上,如果 itemType 为 …

reactjs recharts

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