小编Sna*_*ake的帖子

何时在java中使用"static"的这些变体

有人可以解释以下情况之间的区别以及我们在哪里使用它们?谢谢大家

class A{
  static public void methodA()
}

static class B{
  static public void methodB()
}

static class C{
  public void methodC()
}
Run Code Online (Sandbox Code Playgroud)

编辑:大家好,谢谢你的回答.我也许还不够清楚.我知道除非它们是内部类,否则不能将类B和C声明为静态.我在你的答案中,请假设他们是内部阶级.我想知道何时将它们声明为静态,甚至何时声明它们的方法是静态的.我知道非静态类中的静态方法意味着您可以从任何地方调用它,并且通常执行非特定于对象的常规操作.但是你为什么要声明静态类呢?在您重新阅读我的编辑并接受最具说明性的答案后,我会再次检查您的答案

java

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

setX,setTranslationX,setLeft,LayoutParam.leftMargin,Matrix ..有什么区别

关于设置视图位置的另一个问题.如果你想移动一个视图,你可以做setX,setTranslationX,setLeftLayoutParam.leftMargin Offcourse也有覆盖onDraw方法和使用Matrix/Bitmap/Canvas操作.

我想知道有什么区别.这些都是ultimetly调整相同的值,即视图的x坐标吗?对于未来的读者而言,将它全部放在一个帖子中会很好

到目前为止,我知道,

  • LayoutParam.LeftMargin:适用于所有API(特定于Api 8)
  • SetTranslation:视图的原始左边界与新左边界之间的差异.虽然我听说也许它不是持久的?

任何人都可以了解差异,如果它们影响不同的属性或相同的属性?

android

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

为什么按钮会拉伸以覆盖所有已分配的layout_weight

我试图让3个按钮对齐(左,中,右).我知道它可能可以通过引力完成,但我想在这里尝试理解layout_weight概念.我正在使用此代码:

<LinearLayout
id=..
layout_width =  "wrap_content"
layout_height = "wrap_content"
orientation="Horizonta"
>
 <Button
  id=1
  layout_width =  "wrap_content"
  layout_height = "wrap_content"
  layout_weight = "1"
  text= "text" />

 <Button
  id=2
  layout_width =  "wrap_content"
  layout_height = "wrap_content"
  layout_weight = "1"
  text= "text" />

 <Button
  id=3
  layout_width =  "wrap_content"
  layout_height = "wrap_content"
  layout_weight = "1"
  text= "text" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

但是,我正在获得下图中的TOP部分.哪个是对的.问题是为什么当我使用wrap_content时按钮被拉伸以覆盖它所分配的所有区域?如何使它像BOTTOM图像一样?

在此输入图像描述

谢谢

android android-layout

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

如何从破解APK转到java代码?一键式工具破解了我的应用程序

所以我发布了我的Android应用程序,我编写了它,应用了LVL,甚至改变了一些LVL代码但是当然,我发现它使用一个名为Lucky Patcher的工具破解了某个地方.我不打算问我如何防止这样的1点击工具,因为我猜没有单一的答案(除非你有一个想法并且可以指向我).

我需要请你帮忙弄清楚我的代码是如何破解的.我知道这个工具需要APK文件并删除许可.既然如此,我怎么能把这个APK文件反向工程回Java文件,看看该工具如何破解我的代码(所以我修复了它)

请帮帮我谢谢

android apk

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

Android运行在JAVA SDK版本上

我总是对此感到困惑,Android运行的Java版SDK是什么?例如Android 2.3和Android 4.0.他们运行什么JAVA SDK(1.4,1.5 ..等等?除非我完全错过这个概念,否则请告诉我

android

7
推荐指数
2
解决办法
4161
查看次数

更新后保留SQLite数据

我有一个带有3个表的sqlite的应用程序.我担心的是,如果我引入一个添加另一个表的更新(这样就是4个表),那么更新后的版本将消灭数据库.

如果备份在更新之前发生并且在更新之后恢复,我该如何备份/恢复数据库?如果我使用IO(复制到SD卡并复制回来),那么它将失败.

我想可能是将数据导出到xml并手动加载.还有另外一种方法吗?关于如何做的任何例子?

sqlite android

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

在proguard中使用"dontwarn"

我成功地使用了proguard但是每当我添加外部库(属于广告的那些)时,proguard失败并且"找不到引用......等等".我尝试过很多组合,比如图书馆里的枪,伤害......但没有运气.

然后我在外部文件上使用了"-dontwarn"选项,并且神奇地工作了.这样做不好吗?我的意思是有一个问题,我没有看到处理外部罐使用此属性?

谢谢

android proguard

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

Fb app邀请与推荐代码

我有兴趣使用FB应用程序邀请和应用程序链接功能,以便用户可以邀请他们的朋友.我希望能够传递推荐代码.

我没有网络服务器也不知道我是否应该为此目的.我对这个过程太糊涂了

我按照文档操作,我能够使用https://fb.me/123456789形式的FB托管工具生成应用程序链接

我可以在App邀请对话框中使用它,我将在我的Android应用程序中集成.

现在我的问题是,如何添加引用代码,以便当新用户下载应用程序时,新安装的Android应用程序将收到该引用代码?

android facebook facebook-graph-api facebook-sdk-4.0

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

活动中的 ViewModel 与静态变量

我知道处理方向变化的解决方案之一是使用 ViewModel 来保存数据,因为它比活动更持久。

然而,我想知道,如果我们在类中创建一个静态变量来保存相同的数据,难道我们不能实现同样的事情吗?

为什么我们要走 ViewModel 路径?

谢谢

android

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

具有多个片段/视图的DialogFragment

如何使用动画一个接一个地显示包含多个片段的对话碎片?

我的用例是:

  1. DialogFragment显示片段1.它有一个"下一步"按钮
  2. 用户点击下一步
  3. 相同的dialogFragment显示片段2,其中包含动画幻灯片.

任何指针都会有所帮助.

先感谢您.

这是我正在使用的基本对话片段

public class BaseDialogFragment extends DialogFragment {

    public BaseDialogFragment () {

    }

    public static BaseDialogFragment newInstance(String title) {
        BaseDialogFragment frag = new BaseDialogFragment ();
        Bundle args = new Bundle();
        args.putString("title", title);
        frag.setArguments(args);
        return frag;
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment, container);
    }

    @Override
    public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);


        getDialog().getWindow().setSoftInputMode(
            WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);
    }
}
Run Code Online (Sandbox Code Playgroud)

这是行为的方式.BottomNavigation活动正在显示带流的对话框.下一个/上一个对话框带有滑入/导出导航.

在此输入图像描述

我也对其他建议持开放态度,例如对话主题活动

android

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