我想在固定点周围连续旋转360度图像.我已经看过几个例子,例如:
RotateAnimation anim = new RotateAnimation(0, 360,150,150);
anim.setInterpolator(new LinearInterpolator());
anim.setRepeatCount(Animation.INFINITE);
anim.setDuration(2000);
[imageview].startAnimation(anim);
Run Code Online (Sandbox Code Playgroud)
这会旋转图像,但它会在弧/圆形路径上旋转.IE浏览器.图像以圆周运动方式移动/旋转,但不会固定在它的起始位置.
我基本上想要的是模仿WindMill手臂的旋转.
有什么想法吗?
我正在尝试Hadoop的Basic MapReduce程序,其教程在http://java.dzone.com/articles/hadoop-basics-creating
该类的完整代码是(代码存在于上面的网址上)
import java.io.IOException;
import java.util.StringTokenizer;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.input.KeyValueTextInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
import org.apache.hadoop.util.GenericOptionsParser;
public class Dictionary {
public static class WordMapper extends Mapper<Text, Text, Text, Text> {
private Text word = new Text();
public void map(Text key, Text value, Context context) throws IOException, InterruptedException {
StringTokenizer itr = new StringTokenizer(value.toString(), ",");
while (itr.hasMoreTokens()) {
word.set(itr.nextToken());
context.write(key, word);
}
}
}
public static class …Run Code Online (Sandbox Code Playgroud) 我的列表视图行的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="match_parent"
android:baselineAligned="false"
android:orientation="horizontal" >
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="5"
android:orientation="vertical" >
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp" />
<TextView
android:id="@+id/tv_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_weight="2"
android:gravity="center" >
<ImageView
android:id="@+id/iv_image"
android:layout_width="50dp"
android:layout_height="40dp"
android:background="@drawable/app_icon_17"
android:contentDescription="@string/empty" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_weight="2"
android:gravity="center" >
<Button
android:id="@+id/btn_delete"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/btn_delete_new"
android:focusable="false" />
</LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
我希望id为btn_delete的最后一个按钮保持右对齐.并且它在设计时以"图形布局"的形式显示.但是当我运行它时,在模拟器上它不起作用.
看输出:

那么为什么删除按钮没有正确对齐?
android gravity android-layout android-linearlayout layout-gravity
我的代码
myDb = openOrCreateDatabase("/sdcard/FashionGirl/ImagesDB.db", Context.MODE_PRIVATE, null);
myDb = openOrCreateDatabase(dbPath, Context.MODE_PRIVATE, null);
Run Code Online (Sandbox Code Playgroud)
工作得很好,但却发出了警告 Do not hardcode "/sdcard/"; use Environment.getExternalStorageDirectory().getPath() instead
所以我试过,
String dbPath = Environment.getExternalStorageDirectory().getAbsolutePath() + "FashionGirl/ImagesDB.db";
myDb = openOrCreateDatabase(dbPath, Context.MODE_PRIVATE, null);
Run Code Online (Sandbox Code Playgroud)
但奇怪的是,它不起作用,其中Environment.getExternalStorageDirectory().getAbsolutePath()具有价值 /storage
所以给出错误,
12-17 19:32:02.230: E/SqliteDatabaseCpp(15620): sqlite3_open_v2("/storageFashionGirl/ImagesDB.db", &handle, 6, NULL) failed
12-17 19:32:02.230: E/SQLiteDatabase(15620): Failed to open the database. closing it.
12-17 19:32:02.230: E/SQLiteDatabase(15620): android.database.sqlite.SQLiteCantOpenDatabaseException: unable to open database file
12-17 19:32:02.230: E/SQLiteDatabase(15620): at android.database.sqlite.SQLiteDatabase.dbopen(Native Method)
12-17 19:32:02.230: E/SQLiteDatabase(15620): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:983)
12-17 19:32:02.230: E/SQLiteDatabase(15620): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:956)
12-17 19:32:02.230: E/SQLiteDatabase(15620): …Run Code Online (Sandbox Code Playgroud) 我想在Alert表中列的最新非空值ignition_status.
我的列unix_time是Unix时间戳中的时间,因此最大unix_time列值,最新是条目.
以下是我的代码
cursor = dbUtilsObj.query(Alert.TABLE_NAME, new String[] { alertType_COLUMN }, " MAX(" + Alert.Columns.KEY_ALERT_UNIX_TIME
+ ")" + AND + Alert.Columns.KEY_MACHINE_TELE_DEVICE_NO + EQUALS + AND + alertType_COLUMN + IS_NOT_NULL,
new String[] { String.valueOf(teleDevieNo) }, null, null, Alert.Columns.KEY_ALERT_UNIX_TIME);
Run Code Online (Sandbox Code Playgroud)
得到错误
(1) misuse of aggregate function MAX()
: android.database.sqlite.SQLiteException: misuse of aggregate function MAX() (code 1): , while compiling: SELECT ignition_status FROM alert WHERE MAX(unix_time) and tele_device_no = ? and ignition_status IS NOT NULL ORDER …Run Code Online (Sandbox Code Playgroud) 得到错误
E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:299)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
at java.util.concurrent.FutureTask.run(FutureTask.java:239)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
at java.lang.Thread.run(Thread.java:856)
Caused by: java.lang.ExceptionInInitializerError
at b.b.a.c.c.p.<init>(HSSFWorkbook.java:326)
at b.b.a.c.c.p.<init>(HSSFWorkbook.java:289)
at b.b.a.c.c.p.<init>(HSSFWorkbook.java:224)
at b.b.a.c.c.p.<init>(HSSFWorkbook.java:382)
at b.b.a.c.c.p.<init>(HSSFWorkbook.java:364)
at com.d.link.d.d.a(ExportUtils.java:134)
at com.d.link.activity.ey.a(SplashScreen.java:55)
at com.d.link.activity.ey.doInBackground(SplashScreen.java:51)
at android.os.AsyncTask$2.call(AsyncTask.java:287)
at java.util.concurrent.FutureTask.run(FutureTask.java:234)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
at java.lang.Thread.run(Thread.java:856)
Caused by: b.b.a.c.b.dj: Unable to determine record types
at b.b.a.c.b.dd.a(RecordFactory.java:434)
at b.b.a.c.b.dd.<clinit>(RecordFactory.java:292)
at b.b.a.c.c.p.<init>(HSSFWorkbook.java:326)
at b.b.a.c.c.p.<init>(HSSFWorkbook.java:289)
at b.b.a.c.c.p.<init>(HSSFWorkbook.java:224)
at b.b.a.c.c.p.<init>(HSSFWorkbook.java:382) …Run Code Online (Sandbox Code Playgroud) 出现错误- 'gradlew' is not recognized as an internal or external command. operable program or batch file.在Android Studio终端中。
谁能告诉我为什么它不识别gradlew
我有一个类,我已经编写了一个AsyncTask来从网上获取Json.
public class MyAsyncGetJsonFromUrl extends AsyncTask<Void, Void, JSONObject> {
Context context_;
String url_;
List<NameValuePair> params_;
public MyAsyncGetJsonFromUrl(Context context_, List<NameValuePair> params_, String url_) {
this.context_ = context;
this.params_ = params_;
this.url_ = url_;
}
@Override
protected JSONObject doInBackground(Void... params) {
JSONObject jObj_ = null;
try {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url_);
httpPost.setEntity(new UrlEncodedFormEntity(params_));
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
InputStream is_ = httpEntity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8);
StringBuilder sb = …Run Code Online (Sandbox Code Playgroud) 我有一个问题,我使用相机意图捕获的图像被旋转,我问为什么使用相机意图捕获的图像在Android上的某些设备上旋转?
所以根据那里的建议答案,我现在正在尝试旋转使用相机获得的图像(我已经使用了相机意图).我的代码是,
public class SimpleCameraActivity extends Activity {
private static final int TAKE_PICTURE = 1888;
private Uri imageUri;
ImageView imageView;
Bitmap bitmap;
Button btnOK, btnDiscard;
RelativeLayout rLButtons;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.simple_camera);
imageView = (ImageView) findViewById(R.id.image_view_sc);
captureImage();
}
public void captureImage() {
Intent intentCamera = new Intent("android.media.action.IMAGE_CAPTURE");
File filePhoto = new File(Environment.getExternalStorageDirectory(), "Pic.jpg");
imageUri = Uri.fromFile(filePhoto);
MyApplicationGlobal.imageUri = imageUri.getPath();
intentCamera.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
startActivityForResult(intentCamera, TAKE_PICTURE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intentFromCamera) {
super.onActivityResult(requestCode, resultCode, …Run Code Online (Sandbox Code Playgroud) 我有一个数据结构 - ArrayList>这就是我需要做的 -
ArrayList<HashMap<String, String>> optMapList;
//populated optMapList with some code. Not to worry abt this
List<String> values = new ArrayList<String>();
for(HashMap<String,String> entry: optMapList){
values.add(entry.get("optValue"));
}
Run Code Online (Sandbox Code Playgroud)
我们如何使用Java Streams实现相同的目标?
android ×8
java ×2
rotation ×2
apache-poi ×1
command ×1
excel ×1
execution ×1
external ×1
fixed-point ×1
gradlew ×1
gravity ×1
hadoop ×1
hashmap ×1
hssfworkbook ×1
image ×1
imageview ×1
java-stream ×1
mapreduce ×1
max ×1
path ×1
return-value ×1
select-query ×1
sqlite ×1
storage ×1
terminal ×1
ui-thread ×1