转换方法:
- Convert Android VectorDrawable to SVG:
使用附件中的java程序。命令如下:
cp Vector2Svg.java path/to/xml_dir
javac Vector2Svg.java
java Vector2Svg ./*.xml
mkdir svg_dir
转换方法:
使用附件中的java程序。命令如下:
cp Vector2Svg.java path/to/xml_dir
javac Vector2Svg.java
java Vector2Svg ./*.xml
mkdir svg_dir
<templateSet group="AndroidLogKotlin"> | |
<template name="logm" value="android.util.Log.d(TAG, $FORMAT$)" description="Log method name and its arguments" toReformat="true" toShortenFQNames="true"> | |
<variable name="FORMAT" expression="groovyScript("def params = _2.collect {it + ' = [$' + it + ']'}.join(', '); return '\"' + _1 + '() called' + (params.empty ? '' : ' with: ' + params) + '\"'", kotlinFunctionName(), functionParameters())" defaultValue="" alwaysStopAt="false" /> | |
<context> | |
<option name="KOTLIN_STATEMENT" value="true" /> | |
</context> | |
</template> | |
<template name="logd" value="android.util.Log.d(TAG, "$METHOD_NAME$: $content$")" description="Log.d(String)" toReformat="true" toShortenFQNames="true"> | |
<variable name="METHOD_NAME" expression="kotlinFunctionName()" defaultValue="" alwaysStopAt="false" /> | |
<variable name="content" expression="" defaultValue="" alwaysStopAt="true" /> |
<templateSet group="TimberJava"> | |
<template name="timd" value="timber.log.Timber.d("$METHOD_NAME$: $content$");" description="Timber.d(String)" toReformat="true" toShortenFQNames="true"> | |
<variable name="METHOD_NAME" expression="methodName()" defaultValue="" alwaysStopAt="false" /> | |
<variable name="content" expression="" defaultValue="" alwaysStopAt="true" /> | |
<context> | |
<option name="JAVA_STATEMENT" value="true" /> | |
</context> | |
</template> | |
<template name="time" value="timber.log.Timber.e($exception$, "$METHOD_NAME$: $content$");" description="Timber.e(Exception, String)" toReformat="true" toShortenFQNames="true"> | |
<variable name="exception" expression="" defaultValue="e" alwaysStopAt="true" /> |
{ | |
"data": { | |
"__schema": { | |
"queryType": { | |
"name": "Query" | |
}, | |
"mutationType": { | |
"name": "Mutation" | |
}, | |
"subscriptionType": null, |
# Autogenerated input type of AddComment | |
input AddCommentInput { | |
# A unique identifier for the client performing the mutation. | |
clientMutationId: String | |
# The Node ID of the subject to modify. | |
subjectId: ID! | |
# The contents of the comment. | |
body: String! |
package com.github.brunodles.toastespresso; | |
import android.support.test.rule.ActivityTestRule; | |
import android.support.test.runner.AndroidJUnit4; | |
import android.test.suitebuilder.annotation.LargeTest; | |
import org.junit.Rule; | |
import org.junit.Test; | |
import org.junit.runner.RunWith; |
apply plugin: 'com.android.application' | |
def getVersionName = { -> | |
try { | |
def stdout = new ByteArrayOutputStream() | |
exec { | |
commandLine 'git', 'describe', '--dirty' | |
standardOutput = stdout | |
} | |
return stdout.toString().trim() |
package despotoski.nikola.appbarlayoutsamples.view; | |
import android.animation.IntEvaluator; | |
import android.animation.ValueAnimator; | |
import android.content.Context; | |
import android.content.res.TypedArray; | |
import android.support.design.widget.AppBarLayout; | |
import android.support.design.widget.CoordinatorLayout; | |
import android.support.v4.view.ViewCompat; | |
import android.support.v4.view.ViewPropertyAnimatorCompat; |
package se.emilsjolander.flipview; | |
import se.emilsjolander.flipview.Recycler.Scrap; | |
import android.animation.Animator; | |
import android.animation.AnimatorListenerAdapter; | |
import android.animation.TimeInterpolator; | |
import android.animation.ValueAnimator; | |
import android.animation.ValueAnimator.AnimatorUpdateListener; | |
import android.annotation.SuppressLint; | |
import android.content.Context; |