我正试图从画廊获取图像.
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select picture"), resultCode );
Run Code Online (Sandbox Code Playgroud)
从这个活动返回后,我有一个包含Uri的数据.看起来像:
content://media/external/images/1
Run Code Online (Sandbox Code Playgroud)
如何将此路径转换为真实路径(就像' /sdcard/image.png')?
谢谢
我有首选项页面.它有字段'显示信息屏幕'(作为复选框).
我还有信息页面,也应该有复选框'再次显示'.
据我所知,我可以从偏好页面获得价值PreferencesManager.getDefaultPreferences(context)......
但是我应该如何为信息页面上的复选框设置首选项值?
我尝试使用context.getSharedPreferences(PREF_NAME, 0).edit(),设置值,但它与PreferencesManager的相应值无关.
我该怎么办???F1
我想制作音频记录(通过MediaRecorder/ AudioRecorder)然后播放带有一些变化(特殊效果)的录制文件(例如增加/减少速度,添加回声,与其他预定义音频文件混合等)).
你有什么建议我怎么办?
你有任何有趣的例子吗?
我想以编程方式更改语言(应用程序的语言环境).
我的主要问题是更新菜单标签.
我尝试了以下方法:
@Override
public boolean onMenuOpened(int featureId, Menu menu) {
if (shouldChangeMenuLabels) {
for (int i = 0; i < menu.size(); i++) {
MenuItem menuItem = menu.getItem(i);
switch (menuItem.getItemId()) {
case R.id.menu_main_about:
menuItem.setTitle(R.string.menu_about);
break;
case R.id.menu_main_preferences:
menuItem.setTitle(R.string.menu_prefs);
break;
}
}
shouldChangeMenuLabels = false;
}
Run Code Online (Sandbox Code Playgroud)
但我确定这是个坏主意.我想避免使用switch-case语句,因为这不是通用方法(我不能简单地将剪切端口移植到其他活动/我不能创建抽象类,这样做).
顺便说一句,所有菜单都被描述为menu/*.xml文件,所以我不想复制代码.有人有想法吗?
关注第一个答案:我使用以下代码更改了语言环境:
Locale locale = new Locale((String)newValue);
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
getApplication().getResources().updateConfiguration(config, getApplication().getResources().getDisplayMetrics());
Run Code Online (Sandbox Code Playgroud)
但是,由于我想控制每个活动的旋转,它们永远不会完成.也许我做错了什么?
我有一个活动,该视图有几个 EditText 组件。
当活动开始时,第一个 EditText 获得焦点并出现键盘。我想避免这个“功能”(我的意思是我希望活动开始后不会有弹出键盘)
我有纵向模式(在文件夹布局中)和横向模式(在文件夹布局中)的布局.此屏幕位于其中一个选项卡下,因此我必须处理屏幕旋转(在屏幕旋转后,不会发生默认屏幕重启).
我想在屏幕旋转到横向模式时从'layout-land'更新视图,在屏幕旋转到纵向模式时从'layout'更新视图.
我怎样才能做到这一点?
我在styles.xml中描述了我的对象的属性(永远不要告诉对象是什么).我想在styles.xml中动态更改这些属性.
有谁知道我该怎么办?
我需要在视图上找到文本:
文本'更多文字'应位于bottom | center_horizontal
文本"短文本"应位于右对齐位置,但距离屏幕顶部约10%
文本'xxxx'应与屏幕中心对齐(第一个四分之一的右/底对齐)
文本'一些长文本..'应该与屏幕的第三个四分之一的顶部/左边对齐,但它应该穿过屏幕的center_horizontal.
我有一个带有两个浮点变量和hashCode方法的类(当前代码片段中没有 equals):
public class TestPoint2D {
private float x;
private float z;
public TestPoint2D(float x, float z) {
this.x = x;
this.z = z;
}
@Override
public int hashCode() {
int result = (x != +0.0f ? Float.floatToIntBits(x) : 0);
result = 31 * result + (z != +0.0f ? Float.floatToIntBits(z) : 0);
return result;
}
}
Run Code Online (Sandbox Code Playgroud)
下面的测试
@Test
public void tempTest() {
TestPoint2D p1 = new TestPoint2D(3, -1);
TestPoint2D p2 = new TestPoint2D(-3, 1);
System.out.println(p1.hashCode());
System.out.println(p2.hashCode());
} …Run Code Online (Sandbox Code Playgroud) 我想将图像插入文本,例如:
我想向文本展示这个:
"要编辑图片,您应该点击"[图片]"按钮."
其中[image]是真实图像(例如ImageView)
当我按下按钮时,我想在我的所有活动中禁用屏幕旋转.我怎样才能做到这一点?
顺便说一句,当用户点击按钮时,手机可以位于横向或纵向位置.
android ×11
coding-style ×1
focus ×1
hashcode ×1
image ×1
java ×1
layout ×1
localization ×1
menu ×1
microphone ×1
preferences ×1
rotation ×1
screen ×1
system ×1
text ×1
version ×1