我有一份清单CardViews
.每个CardView
(代表挑战)都有一个ViewPager
显示"解决方案"的垂直可扫描列表.
"解决方案列表"中的数据和图像来自Firebase
数据库.
我遇到的问题是您打开的第一个CardView(当您单击它时,它会展开并显示解决方案)会正确显示所有解决方案.当你点击第二个时,它会扩展但没有显示数据,我认为它是这样的,因为我必须使用"最终"布局(final FrameLayout v0 = (FrameLayout) inflater.inflate(R.layout.solutions, null);
)
以下是自定义RecyclerView
适配器的重要部分的片段.
public class ChallengesAdapter extends
RecyclerView.Adapter<ChallengesAdapter.RecyclerItemViewHolder> {
private ArrayList<ChallengesData> myChallengesList;
int mLastPosition = 0;
//Firebase
String mUID = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference challengeSolutionsRef = rootRef.child("challenges");
FirebaseStorage storage = FirebaseStorage.getInstance();
StorageReference storageRef = storage.getReferenceFromUrl("firebase-url");
public ChallengesAdapter(ArrayList<ChallengesData> myChallengesList) {
this.myChallengesList = myChallengesList;
}
public RecyclerItemViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.challenges_row, parent, false); …
Run Code Online (Sandbox Code Playgroud) android firebase android-cardview firebase-realtime-database firebase-storage
自从我将Android Studio升级到3.0.0后,我遇到了问题:我找不到com.google.android.gms:play-services
了!
添加此依赖项后,当我尝试同步我的项目时,我收到以下消息:
Failed to resolve: com.google.android.gms:play-services-games:11.4.2
Run Code Online (Sandbox Code Playgroud)
我可以点击"安装存储库和同步项目",但是当我这样做时,我会收到以下消息:
Could not find dependency "com.google.android.gms:play-services-games:11.4.2"
Run Code Online (Sandbox Code Playgroud)
我试图搜索,但我找到的唯一解决方案是安装Google存储库,并添加jcenter()
到我的build.gradle
文件中的存储库但是我已经这样做了!
任何的想法?
这是我的build.gradle文件:
buildscript {
repositories {
mavenLocal()
mavenCentral()
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0'
classpath 'com.mobidevelop.robovm:robovm-gradle-plugin:2.3.1'
}
}
allprojects {
apply plugin: "eclipse"
apply plugin: "idea"
version = '1.0'
ext {
appName = "Glowee"
gdxVersion = '1.9.7'
roboVMVersion = '2.3.1'
box2DLightsVersion = '1.4'
ashleyVersion = '1.7.0'
aiVersion = '1.8.0'
}
repositories {
mavenLocal()
mavenCentral()
maven …
Run Code Online (Sandbox Code Playgroud) dependencies android gradle google-play-services android-studio-3.0
我正在开发一项功能,该功能需要 Aes 加密(AES/CBC/PKCS5padding)密文从客户端发送到后端有 ASP.Net 的服务器。
我在服务器端有一个解密功能,如下所示:
public static string Decrypt(string inputBase64, string passphrase = null)
{
byte[] key, iv = new byte[0];
byte[] base64data = Convert.FromBase64String(inputBase64);
byte[] passphrasedata = RawBytesFromString(passphrase);
byte[] currentHash = new byte[0];
SHA256Managed hash = new SHA256Managed();
currentHash = hash.ComputeHash(passphrasedata);
return DecryptStringFromBytes(base64data, currentHash, null);
}
static string DecryptStringFromBytes(byte[] cipherText, byte[] Key, byte[] IV)
{
// Check arguments.
if (cipherText == null || cipherText.Length <= 0)
throw new ArgumentNullException("cipherText");
if (Key == null || Key.Length <= 0)
throw …
Run Code Online (Sandbox Code Playgroud) 我的项目昨天运作良好; 但是当我今天将Android studio更新到3.0时,默认情况下启用了AAPT2.我有以下错误:
Error:layout bounds on right border must start at edge.
Error:Execution failed for task ':app:mergeDevDebugResources'.
Error: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Run Code Online (Sandbox Code Playgroud)
我打开了日志文件,但无法找到线索.当我谷歌Error:layout bounds on right border must start at edge
搜索结果中有9个补丁的问题时.我的项目中也有大约10个9补丁.但我不确定是什么问题.我知道我可以禁用Aapt2,但我想解决问题.谢谢.
我有一个程序,用于在鼠标拖动时在画布上移动对象.但是,我希望画布适合屏幕.我不知道如何实现这一目标.如果我将画布设为"width:100%; height:100%;",则该对象超出范围.
<!doctype html>
<html>
<head>
<link rel="stylesheet" type="text/css" media="all" href="css/reset.css"/> <!-- reset css -->
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js">
</script>
<style>
body{ background-color: ivory; }
canvas{border:1px solid red;}
</style>
<script>
$(function(){
var img = new Image();
img.onload = function(){
ctx.drawImage(img, 0,0);
};
img.src = "http://images.christmastimeclipart.com/images/2/1271716593176_1788/img_1271716593176_17881.jpg";
var canvas=document.getElementById("canvas");
var ctx=canvas.getContext("2d");
var canvasOffset=$("#canvas").offset();
var offsetX=canvasOffset.left;
var offsetY=canvasOffset.top;
var canvasWidth=canvas.width;
var canvasHeight=canvas.height;
var isDragging=false;
// functions to handle mouseup, mousedown, mousemove, mouseout events
$("#canvas").mousedown(function(e){handleMouseDown(e);});
$("#canvas").mousemove(function(e){handleMouseMove(e);});
$("#canvas").mouseup(function(e){handleMouseUp(e);});
$("#canvas").mouseout(function(e){handleMouseOut(e);});
}); // end $(function(){});
</script>
</head>
<body> …
Run Code Online (Sandbox Code Playgroud) 我在使用FFmpeg剪切部分视频时遇到错误
以下是我的代码
String[] cmd = {"ffmpeg -ss 0 -i "+mPath+" -t 30 -c copy "+ (Environment.getExternalStorageDirectory().getAbsolutePath()+"/sample.mp4")};
executeCommand(cmd);
Run Code Online (Sandbox Code Playgroud)
函数executeCommand
void executeCommand(String[] cmd) {
try {
fFmpeg.execute(cmd, new FFmpegExecuteResponseHandler() {
@Override
public void onSuccess(String message) {
Toast.makeText(VideoFullScreen.this, "finished :" + message, Toast.LENGTH_SHORT).show();
}
@Override
public void onProgress(String message) {
}
@Override
public void onFailure(String message) {
Log.e("Error",message);
}
@Override
public void onStart() {
}
@Override
public void onFinish() {
}
});
} catch (FFmpegCommandAlreadyRunningException e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
错误
ffmpeg版本n3.0.1版权所有(c)2000-2016 FFmpeg开发人员 …
我一直在制作一个使用RecyclerView的应用程序,但它没有显示任何内容..为什么没有显示RecyclerView的内容。我的代码如下
item_contact.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:paddingBottom="10dp"
android:paddingTop="10dp">
<TextView
android:id="@+id/contact_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" />
<Button
android:id="@+id/message_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:textSize="10sp" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
ContactsAdaptor.java
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;
import java.util.List;
public class ContactsAdapter extends RecyclerView.Adapter<ContactsAdapter.ViewHolder> {
private List<Contact> mContacts;
public ContactsAdapter(List<Contact> contacts) {
mContacts = contacts;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
Context context = parent.getContext();
LayoutInflater inflater = LayoutInflater.from(context);
View contactView = inflater.inflate(R.layout.item_contact, parent, false); …
Run Code Online (Sandbox Code Playgroud) android android-layout recycler-adapter android-recyclerview
android ×5
aapt ×1
cryptography ×1
css ×1
dependencies ×1
ffmpeg ×1
firebase ×1
gradle ×1
html5 ×1
java ×1
javascript ×1
jquery ×1