每当我搜索我遇到这个"android 5(L)活动过渡只有可用API >= 21.
这很好,但我可以看到一些类似的应用程序QuickPic和google inbox使用类似的过渡和还致力于降低API,因此这个应用程序是如何做这样的事情?
我做了什么?
1)很多搜索:)
2)玩ActivityOptionsCompat那个只适用于api> = 21,像这样:
ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(activity, transitionView, DATA.EXTRA_PASSED_JSON);
Intent intent = new Intent(activity, PhotoViewerActivity.class);
intent.putExtra(DATA.EXTRA_PASSED_JSON, json);
ActivityCompat.startActivity(activity, intent, options.toBundle());
Run Code Online (Sandbox Code Playgroud)
编辑(问题标记为重复):在这种情况下,它与其他问题不同,因为我说有其他应用程序在较低的api中进行此转换,我想知道他们是如何做到的.
我之前使用 git 没有任何问题,但突然间我无法推送或克隆任何东西。当我使用这个命令时,什么也没有发生,甚至没有错误,所以我必须按ctrl + c或关闭 git 窗口。
我使用这个简单的命令进行推送:
git push origin master
Run Code Online (Sandbox Code Playgroud)
也试过-u参数。
那么我能做些什么来解决这个问题?
更新:
我在虚拟机上安装了一个新的 win xp 并测试推送一些东西,结果和以前一样,所以可能是我的互联网连接有问题。
任何的想法?
我正在尝试为android构建一个epub阅读器,每件事情都很好并按预期工作,但我无法解决的问题是保存上次看到的页面(或保存书签的位置).
一点背景:
我css multi column用来显示epub,columnWidth设置为windowWidth和columnHeight设置为windowHeight.
确保每列都填满整个屏幕.
目前,为了保存位置,我预先处理 html并使用div包含id表示节号和标签位置的特定包装来包装每个元素.例如<p>,进程后的标记将是这样的:
<div id="id__1__8"><p>some text</p></div>
Run Code Online (Sandbox Code Playgroud)
在id__1__8表示此文本属于部分1,它是在第八元件在该机构.
我有一个完整的这些ID列表,为了保存位置,我使用jQuery比较当前列的左边,每个左边id的最左边id都会找到,我知道这个页面属于epub中的位置.
下一步是找到偏移量(假设一个p标签填满7页).对于偏移量,我知道我必须加载第1节的第8个元素并转到第5页.
看看jQuery中的函数:(用于查找最近的元素和偏移量)
jqGetLastPosition = function(ids)
{
var tempColumn = _column; // _column is current page that is showing
if(tempColumn < 0)
{
tempColumn = -1 * tempColumn;
}
var realIds = ids.split("|");
var …Run Code Online (Sandbox Code Playgroud) 我已经android:onclick在xml中设置了一个imageButton,并将该方法放入我的活动中.在android s低于5它工作正常但在android 5它给我错误.
我的imageButton代码:
<ImageButton
android:id="@+id/photo_detail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/detail_icon"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:background="@drawable/image_background"
android:onClick="photoDetailButtonMethod"/>
Run Code Online (Sandbox Code Playgroud)
我的方法代码:
public void photoDetailButtonMethod(View theButton)
{
//something
}
Run Code Online (Sandbox Code Playgroud)
错误:
java.lang.IllegalStateException: Could not find a method photoDetailButtonMethod(View) in the activity class android.view.ContextThemeWrapper for onClick handler on view class android.widget.ImageButton with id 'photo_detail'
at android.view.View$1.onClick(View.java:3994)
at android.view.View.performClick(View.java:4756)
at android.view.View$PerformClick.run(View.java:19749)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5221)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
Caused by: java.lang.NoSuchMethodException: photoDetailButtonMethod [class android.view.View]
at java.lang.Class.getMethod(Class.java:664)
at java.lang.Class.getMethod(Class.java:643)
at …Run Code Online (Sandbox Code Playgroud) 我正在尝试通过MQTT-Client-Framework连接到我们的推送服务器.
连接到服务器没有复杂性,只需几行代码即可连接到服务器并订阅主题.
但我有几个问题,我找不到任何直接的答案.
1)如何让我的客户端在后台运行?
2)设备重启后会发生什么?设备重启后如何自动连接服务器?
3)假设我在连接服务器时遇到错误.这个库是否会尝试连接循环?尝试多少次?或者我需要自己管理?
4)订阅主题的3个场景相同?
我有自定义样式的活动,我希望我的活动有一个自定义标题栏,所以我创建了以下样式:
<style name="costum_titlebar">
<item name="android:background">@color/titlebar_background</item>
</style>
<style name="CustomTheme" parent="android:Theme">
<item name="android:windowTitleSize">@dimen/titlebar_size</item>
<item name="android:windowTitleBackgroundStyle">@style/costum_titlebar</item>
</style>
Run Code Online (Sandbox Code Playgroud)
在清单中我使用:
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/CustomTheme" >
Run Code Online (Sandbox Code Playgroud)
在我使用的活动中:
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
this.getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.setting_activity_titlebar);
Run Code Online (Sandbox Code Playgroud)
到目前为止它很好并且工作正常,我有自定义标题栏的活动.
现在我想使用datePickerDialog.问题是对话框看起来很旧:

但我希望它看起来像这样:

我也有这种风格:
<style name="AppBaseTheme" parent="android:Theme.Light">
Run Code Online (Sandbox Code Playgroud)
所以我用它来创建DatePickerDialog,如下所示:
new DatePickerDialog(getActivity(),R.style.AppBaseTheme, this, year, month, day);
Run Code Online (Sandbox Code Playgroud)
但主题不适用.
只是为了测试,我创建了一个默认样式的第二个应用程序,只有一个按钮来打开日期选择器,所以datepicker看起来像我想要的.两个应用都有android:minSdkVersion="8"
我认为问题出在自定义标题栏上,那么我如何才能获得所需风格的自定义标题栏和日期选择器呢?
编辑:
我改变android:minSdkVersion="11"
了
<style name="datePickerTheme" parent="@android:style/Widget.Holo.DatePicker"></style>
和
new DatePickerDialog(getActivity(),R.style.datePickerTheme, this, year, month, day);
但结果仍然是一样的.
我正在尝试为多平台项目构建一个网络模块ktor。我的请求代码GET是这样的:
val result = httpClient.get<HttpResponse> {
url {
protocol = baseProtocol
host = baseUrl
encodedPath = urlPath
}
}
Run Code Online (Sandbox Code Playgroud)
在某些时候,我的路径包含这样的用户 ID /users/{user_id}。我可以在字符串中进行搜索和替换,并将其替换user_id为实际值,但是还有其他方法可以做到这一点吗?任何ktor具体方式。
例如Retrofit我们有这个:
@GET("users/{user_id}/")
SomeData getUserData(@Path("user_id") String userId);
Run Code Online (Sandbox Code Playgroud)
编辑:添加更多代码
val result = httpClient.get<HttpResponse> {
url {
protocol = baseProtocol
host = baseUrl
var requestPath = request.requestPath.value
request.path?.forEach {
requestPath = requestPath.replace(it.first, it.second)
}
encodedPath = requestPath
if (request.parameters != null) {
parameters.appendAll(getParametersFromList(request.parameters))
}
}
Run Code Online (Sandbox Code Playgroud)
替换request.path?.forEach { requestPath = …
我有一个改变lineHeight身体的功能(我需要改变所有元素的行高):
if (document.body.style.lineHeight == "")
{
document.body.style.lineHeight = "1.0em";
}
document.body.style.lineHeight = parseFloat(document.body.style.lineHeight) + (0.4) + "em";
Run Code Online (Sandbox Code Playgroud)
如果文档中没有任何line-heightcss,则此代码可以正常工作,并且元素的所有行高都会增加,但在某些情况下会出现奇怪的行为:
1)document.body.style.lineHeight == ""即使身体在css中也是如此line-height!
2)如果line-heightCSS中有任何元素,则此代码将无法更改行高.我可以获得document.body.style.lineHeight价值,我可以看到它增加但是文档中没有任何变化!(没有视觉效果)
任何帮助,将不胜感激.
我正在使用com.android.support:design:23.1.0,而且我也在android:supportsRtl="true"使用清单.
我正在尝试创建一个在RTL和LTR语言上都能正常工作的抽屉.
但是RTL语言中的默认行为是错误的.
我怎么能解决这个问题?
tnx提前.
activity_main2.xml:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">
<include
layout="@layout/app_bar_main2"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main2"
app:menu="@menu/activity_main2_drawer"/>
</android.support.v4.widget.DrawerLayout>
Run Code Online (Sandbox Code Playgroud)
nav_header_main2.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="@dimen/nav_header_height"
android:background="@drawable/side_nav_bar"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:theme="@style/ThemeOverlay.AppCompat.Dark"
android:orientation="vertical"
android:gravity="bottom">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:src="@android:drawable/sym_def_app_icon"
android:id="@+id/imageView"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:text="Android Studio"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="android.studio@android.com"
android:id="@+id/textView"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
activity_main2_drawer.xml:
<?xml …Run Code Online (Sandbox Code Playgroud) 我有一个使用jni库的项目.为此,我在我的gradle文件中有这个设置,根据他们的平台拆分apks(并且工作正常):
applicationVariants.all { variant ->
variant.outputs.each { output ->
output.properties.put(signingConfig, signingConfigs.config)
output.versionCodeOverride =
versionCodes.get(output.getFilter(
com.android.build.OutputFile.ABI), 0) * 10000000 + android.defaultConfig.versionCode
}
}
splits {
abi {
enable true
reset()
include "armeabi", "armeabi-v7a", "arm64-v8a", "mips", "mips64", "x86", "x86_64"
universalApk true
}
}
Run Code Online (Sandbox Code Playgroud)
现在我想设置一个签名配置,这样我就可以release直接从android studio 运行Build变量,所以我把它添加到我的gradle文件中:
def keystorePropertiesFile = rootProject.file("keystore.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
android {
signingConfigs {
config {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile rootProject.file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
buildTypes …Run Code Online (Sandbox Code Playgroud) java-native-interface android android-gradle-plugin android-signing
我想要这样的东西:

我用android relativelayout和它的标签如下:android:layout_centerHorizontal ="true",这给了我这个:

我与其他标签的玩家并组合起来,但没有成功.
有没有办法做到这一点?
我正在尝试获取 html 页面的正文内容。
假设这个 html 文件:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link href="../Styles/style.css" rel="STYLESHEET" type="text/css" />
<title></title>
</head>
<body>
<p> text 1 </p>
<p> text 2 </p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我想要的是:
<p> text 1 </p>
<p> text 2 </p>
Run Code Online (Sandbox Code Playgroud)
所以,我认为使用SAXParser可以做到这一点(如果你知道更简单的方法请告诉我)
这是我的代码,但我总是得到null作为正文内容:
private final String HTML_NAME_SPACE = "http://www.w3.org/1999/xhtml";
private final String HTML_TAG = "html";
private final String BODY_TAG = "body";
public static void parseHTML(InputStream in, ContentHandler handler) throws IOException, …Run Code Online (Sandbox Code Playgroud)