我有一个非常简单的布局,带有EditText和一个按钮.问题是在活动开始后立即出现键盘并且EditText获得焦点.我删除了</requestFocus>XML,我也没有在代码中执行此操作.如何防止EditText的这种行为,以便键盘仅在使用后点击editText后出现?
我有一个Activity作为音乐播放器.当它启动时,MediaPlayer对象被初始化并启动.在布局中,我必须TextViews显示艺术家和标题.这些值(从服务器检索)可能很长,所以我补充说
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
Run Code Online (Sandbox Code Playgroud)
使文本滚动.有一个奇怪的问题:当我按下"暂停"按钮时,它们TextViews正在滚动,但是在播放音乐时它们不会滚动.有任何想法吗?
PS我SeekBar用a 更新每500ms Runnable,问题可能与此有关吗?
这是我的布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000000"
android:gravity="center_vertical"
tools:context=".MainActivity" >
<LinearLayout
android:id="@+id/main_header"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentTop="true"
android:orientation="horizontal" >
</LinearLayout>
<ImageView
android:id="@+id/imgCoverArt"
android:layout_width="150dp"
android:layout_height="150dp"
android:layout_below="@+id/main_header"
android:layout_centerHorizontal="true"
android:layout_marginBottom="15dp"
android:layout_marginTop="20dp"
android:src="@drawable/cover_default" />
<SeekBar
android:id="@+id/seekBarMain"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/imgCoverArt"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="10dp"
android:paddingLeft="9dp"
android:paddingRight="9dp"
android:progressDrawable="@drawable/pb"
android:thumb="@drawable/pbhead" />
<TextView
android:id="@+id/tvArtist"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/seekBarMain"
android:layout_centerHorizontal="true"
android:layout_marginTop="35dp"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:singleLine="true"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#FFFFFF" />
<TextView
android:id="@+id/tvTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content" …Run Code Online (Sandbox Code Playgroud) 编辑完全重新解决了问题,以便更好地理解
我必须http://api.bf3stats.com/pc/player/使用2个POST参数查询给定的URL :'player'(对于玩家名称)和'opt'(对于选项).我已经在http://www.requestmaker.com/上测试了以下数据:player=Zer0conf&opt=all.我得到了正确的JSON响应(我以为我不知道他们的网站如何执行查询,我猜它是php).现在我想在Android中做同样的事情:
private StringBuilder inputStreamToString(InputStream is) {
//this method converts an inputStream to String representation
String line = "";
StringBuilder total = new StringBuilder();
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
try {
while ((line = rd.readLine()) != null) {
total.append(line);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return total;
}
Run Code Online (Sandbox Code Playgroud)
这就是我提出请求的方式:
public void postData(String url, String name) {
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = …Run Code Online (Sandbox Code Playgroud) 我正在尝试按照此引用自定义ActionBar的选项卡指示器,但是我收到错误:
Error retrieving parent for item: No resource found that matches the given name '@style/Widget.Holo.ActionBar.TabView'.
Run Code Online (Sandbox Code Playgroud)
最低SDK设置为14,目标SDK = 18.任何想法?
编辑:
我已经有以下样式工作:
<style name="sMain" parent="@android:style/Theme.Holo">
<item name="android:icon">@android:color/transparent</item>
<item name="android:actionBarStyle">@style/MyActionBar</item>
<item name="android:actionBarDivider">@null</item>
</style>
<style name="MyActionBar" parent="android:Widget.Holo.ActionBar">
<item name="android:actionBarDivider">@null</item>
</style>
Run Code Online (Sandbox Code Playgroud) 我使用a的基本和非常常见的实现LeadingMarginSpan2来围绕图像包装文本(因为它似乎是最简单的方法,请不要建议我WebView在此时使用s):
public class MyLeadingMarginSpan2 implements LeadingMarginSpan.LeadingMarginSpan2 {
private int margin;
private int lines;
public MyLeadingMarginSpan2(int lines, int margin) {
this.margin = margin;
this.lines = lines;
}
@Override
public int getLeadingMargin(boolean first) {
return first ? margin : 0; // <--- the issue is here
}
@Override
public void drawLeadingMargin(Canvas c, Paint p, int x, int dir,
int top, int baseline, int bottom, CharSequence text,
int start, int end, boolean first, Layout layout) {
}
@Override
public …Run Code Online (Sandbox Code Playgroud) 我有一个imageView,我正在尝试创建圆角,尝试了这篇文章中的所有解决方案:如何制作带圆角的ImageView? 但没有任何效果......这是我的XML
<RelativeLayout
android:id="@+id/RL_ImageHolder"
android:layout_width="150dp"
android:layout_height="180dp"
android:layout_alignBottom="@+id/relativeLayout2"
android:layout_alignParentLeft="true"
android:layout_alignTop="@+id/relativeLayout2"
android:layout_marginLeft="10dp" >
<ImageView
android:id="@+id/imgPreview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:contentDescription="Preview"
/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
这就是我使用上面链接的帖子中提到的方法设置ImageView的方法:
byteArray = extras.getByteArray("picture");
if (byteArray != null) {
bmp = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);
preview.setScaleType(ScaleType.CENTER_CROP);
preview.setImageBitmap(getRoundedCornerBitmap(bmp));
Run Code Online (Sandbox Code Playgroud)
图像设置正确,但它保留一个矩形..任何想法为什么它不起作用?
编辑:刚刚发现,只有当持有图像的布局具有固定的宽度/高度时,它才起作用.不得不考虑如何管理它.多谢你们
我使用下面发布的布局通过将该布局作为一行扩展到ListView来显示消息.问题是它可以使用单行消息正常工作,但当有2行或更多行ImageView指示消息状态被推离屏幕时,无法得到原因.有任何想法吗?布局代码和截图如下.

这是膨胀的布局:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="5dp" >
<TextView
android:id="@+id/tvTimestamp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:text="TextView"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textSize="8sp" />
<LinearLayout
android:id="@+id/rl_message_holder"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_toRightOf="@+id/tvTimestamp"
android:background="@drawable/outgoing_bg"
android:orientation="horizontal" >
<TextView
android:id="@+id/tvMessageOutgoing"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="4dp"
android:text="Medium Text"
android:textAppearance="?android:attr/textAppearanceMedium" />
<ImageView
android:id="@+id/imgMessageState"
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_gravity="bottom"
android:src="@drawable/ic_launcher" />
</LinearLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud) 我有一个ExpandableListView,我需要设置一个特定的组(groupPosition已知且始终相同)是不可扩展的,只需Activity在单击时启动一个新的.有没有办法做到这一点?
UPDATE
我也只需要一次扩展一个组,并尝试以下(但这不能正常工作):
getExpandableListView().setOnGroupClickListener(
new OnGroupClickListener() {
@Override
public boolean onGroupClick(ExpandableListView parent,
View v, int groupPosition, long id) {
if (groupPosition == 1) {
Toast.makeText(getApplicationContext(), "TEST",
Toast.LENGTH_SHORT).show();
} else if (groupPosition != lastExpandedGroupPosition) {
getExpandableListView().collapseGroup(
lastExpandedGroupPosition);
} else
getExpandableListView().expandGroup(groupPosition);
lastExpandedGroupPosition = groupPosition;
return true;
}
});
Run Code Online (Sandbox Code Playgroud) 是否有可能强制Android MediaPlayer在播放像默认播放器(至少在三星设备上)的轨道时模拟5.1环绕声?任何有用的链接和建议值得赞赏,花了很多时间寻找解决方案,但仍然没有找到任何结果.
我正在尝试使用Android Studio 3.0.1运行"hello world"应用程序,并获得以下AAPT2错误输出:
Error:(16) error: not well-formed (invalid token).
Error:(16) not well-formed (invalid token).
Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:Execution failed for task ':app:mergeDebugResources'.
> Error: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details...
Run Code Online (Sandbox Code Playgroud)
我无法找到解决方案,有人可以帮助我吗?