我刚刚在Google Play上发布了我的第一个应用程序,我不小心选择了错误的语言作为我的应用程序的默认语言.我设置了"德语",虽然我的应用程序实际上是英文的.
我无法在任何可能更改此设置的地方找到设置.
有谁知道在哪里编辑这个?
我想在左侧的“按钮”中添加一个“可绘制的图像”,并尝试了以下操作:
button = new Button(this);
button.setWidth(screen_dimens(0.25, "w")); //25% of screen width
button.setPadding(5, 5, 0, 5);
Drawable img = getResources().getDrawable(R.drawable.image);
button.setCompoundDrawablesWithIntrinsicBounds(img, null, null, null);
Run Code Online (Sandbox Code Playgroud)
但我想在可绘制对象和按钮边框之间的左侧留一个填充。不幸的是,没有。
有什么帮助吗?
如果我想用Java以编程方式设置ImageView的宽度/高度,如下所示:
image_view.getLayoutParams().width = 200;
Run Code Online (Sandbox Code Playgroud)
那些"200"的单位是多少?是px/dp吗?
它在每台设备上看起来都"一样"吗?(这意味着:它在平板电脑上是非常大的,在智能手机上是非常小的吗?)
我目前正在开发我的第一个更大的java项目(一个游戏),我只有一些组织问题,只有几个(~40个)类.
我正在组织我的游戏:

这对我来说似乎非常有条理,因为每个小班级都被归类为更大的班级.显然,类ObjectHandler或者类Model将包含更多类,否则它们将毫无用处.
现在,我的问题是:当我试图访问当前PlayerSettings从DynamicObjects在GUI(例如,当我试图让以画在画布上的玩家的位置),我不得不创建一个像这样的长路:
int x = gui.engine.model.objHandler.player.playerSettings.getX();
Run Code Online (Sandbox Code Playgroud)
(为此我设置了大多数参数public.我也可以使用get()-methods 访问它们,但这对我来说似乎更无组织)
我的问题是 - 这看起来是正常的还是有更好的方法来解决这个组织问题?
在assets我的Android App Project 的文件夹中,我存储了描述游戏中动作的自定义XML文件.由于它们稍微复杂一些,因此无法直接编写为Android资源.
更新:我现在将自定义(复杂)XML文件存储在res/xml文件夹中.
简单示例:
<dialog>
<npc>1</npc>
<text>Hello! How are you?</text>
</dialog>
Run Code Online (Sandbox Code Playgroud)
我想要的是利用Android String资源的方便优势进行语言本地化.在上面的例子中,我想保存Hello! How are you?在我的res/values/strings.xml,然后以某种方式引用它:
<text>@string/dialog_1_text</text>
Run Code Online (Sandbox Code Playgroud)
我不希望创建不同语言res/xml的文件夹,我复制所有的XML文件,并将其完全翻译.我只想要翻译部分内容.通过引用String资源轻松实现.
更新2:我现在发现,您获得的XMLParser Resource.getXml()有一个方法getAttributeResourceValue(),该方法将randomAtt="@string/random_string"自动属性转换为实际的资源ID.
但是,在XML文件中,仍然没有明确的依赖关系,并且在放入无效资源时没有预览字符串或警告.但是 - 因为甚至有一种方法 - 我坚信可以让验证器只允许某些自定义属性中的字符串资源.
如果我执行以下操作:
date("H:i:s", 0);
Run Code Online (Sandbox Code Playgroud)
它返回01:00:00,而它应该给00:00:00.
它可能与我的本地主机的时区有关吗?(UTC + 1)
如果是这样,我该如何解决这个问题呢?
我创建在我的应用程序的布局,其包括以下内容:
main_layout(FrameLayout,填满整个屏幕)
- >包括:main_interface(LinearLayout,高度/宽度填充亲本)
现在我想LinearLayout在main_layoutBEFORE中添加另一个main_interface.我试过这个:
LinearLayout bar = new LinearLayout(this);
bar.setGravity(Gravity.TOP);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
bar.setLayoutParams(params);
main_layout.addView(bar);
Run Code Online (Sandbox Code Playgroud)
但这只是重叠我的main_interface.
任何帮助?
这是我创建新 ImageView 的源代码:
ImageView image = new ImageView(this);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.width = screen_dimens(0.5, "w");
params.height = screen_dimens(0.5, "w");
image.setLayoutParams(params);
Run Code Online (Sandbox Code Playgroud)
(screen_dimens(0.5, "w")=屏幕宽度的 50%)
但现在当我想获取图像的宽度时,我得到以下结果:
image.getWidth() => 0
image.getLayoutParams().width => 360
现在这两个函数有什么区别?如何设置图像宽度以便该getWidth()方法也返回正确的值?
我给了我这样<img>一个特别的attribute东西:
<img src="image.png" _percent="0.01">
Run Code Online (Sandbox Code Playgroud)
现在我想_percent通过jQuery(或基本的javascript)获得
我尝试的价值
$("img").attr("_percent");
Run Code Online (Sandbox Code Playgroud)
但这会回来undefined.
有谁知道该怎么办?