我想知道是否有办法处理用户Enter在键入时按下EditText
,例如onSubmit HTML事件.
还想知道是否有一种方法可以操作虚拟键盘,使"完成"按钮被标记为其他东西(例如"Go")并在单击时执行某个操作(再次,如onSubmit).
我正在查看@ font-face CSS规则的MDC页面,但我没有得到一件事.我有单独的文件粗体,斜体和粗体+斜体.如何将所有三个文件嵌入一个@font-face
规则中?例如,如果我有:
@font-face {
font-family: "DejaVu Sans";
src: url("./fonts/DejaVuSans.ttf") format("ttf");
}
strong {
font-family: "DejaVu Sans";
font-weight: bold;
}
Run Code Online (Sandbox Code Playgroud)
浏览器将不知道哪个字体用于粗体(因为该文件是DejaVuSansBold.ttf),因此它将默认为我可能不想要的东西.如何告诉浏览器我对某种字体的所有不同变体?
我有一个LinearLayout
里面ScrollView
有android:layout_height="fill_parent"
,但它并没有扩展到的最大高度ScrollView
.我的布局看起来像:
level layout layout_width layout_height
1 LinearLayout fill_parent fill_parent
2 LinearLayout fill_parent wrap_content
3 (some irrelevant stuff)
2 ScrollView fill_parent fill_parent <-- this expands full height
3 LinearLayout fill_parent fill_parent <-- this does not (has orientation=vertical)
(following stuff probably are irrelevant, but just to be sure:)
4 TextView fill_parent fill_parent
4 LinearLayout fill_parent wrap_content
Run Code Online (Sandbox Code Playgroud)
我可以看到LinearLayout
它没有扩展整个高度,ScrollView
因为在Eclipse中Android Layout Editor
,如果我选择ScrollView
(在"大纲"面板中)它会突出显示一个红色边框,将屏幕填充到底部但是当我选择LinearLayout
它的高亮显示时不会扩展到屏幕的底部.我怎么能这样做?
我想要达到的效果是在它下面有一些文字和一个按钮(在第LinearLayout
4级里面只有一个按钮).文本可能足够大,需要滚动条,在这种情况下,我希望用户必须向下滚动才能看到按钮.如果文本不够大,滚动条,我希望LinearLayout
包含按钮粘在屏幕的底部. …
我正在向我的服务器发出请求jQuery.post()
,我的服务器正在返回JSON对象(如{ "var": "value", ... }
).但是,如果任何值包含单引号(正确转义\'
),jQuery无法解析其他有效的JSON字符串.这是我的意思的一个例子(在Chrome的控制台中完成):
data = "{ \"status\": \"success\", \"newHtml\": \"Hello \\\'x\" }";
eval("x = " + data); // { newHtml: "Hello 'x", status: "success" }
$.parseJSON(data); // Invalid JSON: { "status": "success", "newHtml": "Hello \'x" }
Run Code Online (Sandbox Code Playgroud)
这是正常的吗?有没有办法通过JSON正确传递单个引用?
有没有办法在Java中释放内存,类似于C的free()
功能?或者将对象设置为null并依赖GC是唯一的选择?
我知道我可以将转义的HTML标记放在字符串资源中.但是,查看Contacts应用程序的源代码,我可以看到他们有一种不必编码HTML的方法.从Contacts应用程序strings.xml中引用:
<string name="contactsSyncPlug"><font fgcolor="#ffffffff">Sync your Google contacts!</font>
\nAfter syncing to your phone, your contacts will be available to you wherever you go.</string>
Run Code Online (Sandbox Code Playgroud)
不幸的是,当我尝试类似的东西(比如Hello, <b>World</b>!
)时,getString()
返回没有标签的字符串(我可以看到logcat
).这是为什么?如何获得带有标签和所有内容的原始字符串?联系人应用程序如何执行此操作?
我似乎无法理解为什么会这样.这段代码:
mProgressDialog = ProgressDialog.show(this, "", getString(R.string.loading), true);
Run Code Online (Sandbox Code Playgroud)
工作得很好.但是,这段代码:
mProgressDialog = ProgressDialog.show(getApplicationContext(), "", getString(R.string.loading), true);
Run Code Online (Sandbox Code Playgroud)
抛出以下异常:
W/WindowManager( 569): Attempted to add window with non-application token WindowToken{438bee58 token=null}. Aborting.
D/AndroidRuntime( 2049): Shutting down VM
W/dalvikvm( 2049): threadid=3: thread exiting with uncaught exception (group=0x4001aa28)
E/AndroidRuntime( 2049): Uncaught handler: thread main exiting due to uncaught exception
E/AndroidRuntime( 2049): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.tastekid.TasteKid/com.tastekid.TasteKid.YouTube}: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
E/AndroidRuntime( 2049): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2401)
E/AndroidRuntime( 2049): at …
Run Code Online (Sandbox Code Playgroud) 我有一个ListView
.当用户一直滚动到底部时,它背后的数据是从10到30个项目的互联网中获取的.为了表明它正在加载更多项目,我曾经addFooterView()
添加了一个简单的视图,显示"正在加载..."消息和一个微调器.现在,当我没有数据(没有更多数据要提取)时,我想要隐藏该消息.我试着这样做:
loadingView.setVisibility(View.GONE);
Run Code Online (Sandbox Code Playgroud)
不幸的是,虽然这确实隐藏了视图,但它为它留下了空间.即我最终得到一个大的空白区域,其中"加载"消息曾经是.我怎样才能正确隐藏这个视图?
我无法使用,removeFooterView()
因为我可能需要再次显示它,在这种情况下我不能addFooterView()
再次调用,因为已经设置了适配器ListView
,并且在设置适配器后无法调用addHeaderView()
/ addFooterView()
.
我希望两个TextView
元素并排显示(在列表项中),一个元素向左对齐,一个向右对齐.就像是:
|<TextView> <TextView>|
Run Code Online (Sandbox Code Playgroud)
(|
代表屏幕的四肢)
但是,TextView
左侧的内容可能太长而无法放在屏幕上.在这种情况下,我想让它椭圆形但仍然显示完整的权利TextView
.就像是:
|This is a lot of conte...<TextView>|
Run Code Online (Sandbox Code Playgroud)
我在此进行过多次尝试,同时使用LinearLayout
和RelativeLayout
,和我想出了唯一的解决办法是使用RelativeLayout
,把一个marginRight
在左边TextView
足够大的权明确TextView
.但是,你可以想象,这不是最佳选择.
还有其他解决方案吗?
最终LinearLayout
解决方案:
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:orientation="horizontal"
>
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_weight="1"
android:ellipsize="end"
android:inputType="text"
/>
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_weight="0"
android:layout_gravity="right"
android:inputType="text"
/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
旧的,TableLayout
解决方案:
<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:stretchColumns="1"
android:shrinkColumns="0"
>
<TableRow>
<TextView android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:singleLine="true"
/>
<TextView android:id="@+id/date"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:singleLine="true"
android:ellipsize="none" …
Run Code Online (Sandbox Code Playgroud) 在我看来WebView
,我有一些具有背景颜色(不同于白色)的块元素.然而,背景颜色并没有一路走过天空 ..嗯,屏幕.相反,它会在右侧留下一个小的白色条带,用于滚动条的位置.现在,我希望滚动条仅在滚动时出现(并在用户完成滚动后逐渐消失).我试过了:
android:fadingEdge="vertical|horizontal"
android:fadeScrollbars="true"
android:scrollbarStyle="insideOverlay" (and all other options)
Run Code Online (Sandbox Code Playgroud)
另外,我的HTML包含以下内容<head>
:
<meta name="viewport" content="target-densitydpi=device-dpi" />
Run Code Online (Sandbox Code Playgroud)
因此它不允许缩放,默认情况下不会缩小.
但是,我无法弄清楚如何摆脱白色条带.有任何想法吗?