我继承了一些代码并且我正在研究它,但是,当我尝试构建它时,我得到以下问题:
activity_login.xml:26: error: No resource identifier found for attribute 'login_text' in package
Run Code Online (Sandbox Code Playgroud)
我的按钮xml如下:
<com.facebook.widget.LoginButton
xmlns:fb="http://schemas.android.com/apk/res-auto"
android:id="@+id/facebookBtn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:textColor="@color/white"
android:textAppearance="@android:style/TextAppearance.Small"
android:gravity="center"
android:onClick="facebookBtnClick"
android:paddingLeft="30dp"
fb:login_text="@string/loginWithFacebook"
/>
Run Code Online (Sandbox Code Playgroud)
我也试过投入,xmlns:fb="http://schemas.android.com/apk/res/com.facebook.widget"
但这也不适合我,如果有人有任何建议我会非常感激
我已经实现了使用纹理视图和媒体播放器实现的视频播放器的回收器视图。
如果我向下滚动列表,我可以单击该项目并播放视频。但是,对于回收器视图,一旦视图离开屏幕,它就会被回收以供重用。如果我向上滚动,所有视图现在都是空白(黑色)。
我希望添加功能,当用户将视频滚动到屏幕外时,它将暂停并保持对该视频的引用,以便如果他们滚动回该视频,它将从该点开始播放。
我已签这个了,但是我不想下载的视频,我只是想流。我不是在找人为我做这件事,我只是在寻找一些指示,并希望有人可以分享他们的知识......在此先感谢
这是我到目前为止所做的:
视频播放器
public class CustomVideoPlayer implements TextureView.SurfaceTextureListener, VideoControllerView.MediaPlayerControl, MediaPlayer.OnBufferingUpdateListener, MediaPlayer.OnCompletionListener, MediaPlayer.OnPreparedListener, MediaPlayer.OnVideoSizeChangedListener {
private Context mContext;
private String mUrl;
private MediaPlayer mMediaPlayer;
private Surface mSurface;
private VideoControllerView mControllerView;
private TextureView mTextureView;
private CardView mCardView;
private ProgressBar mProgress;
private FrameLayout mView;
private RelativeLayout mLayout;
public CustomVideoPlayer(Context ctx, TextureView view, ProgressBar progressDialog, FrameLayout holderView){
this.mContext = ctx;
mTextureView = view;
mTextureView.setSurfaceTextureListener(this);
mProgress = progressDialog;
mControllerView = new VideoControllerView(ctx);
mView = holderView;
mTextureView.setOnTouchListener(new ControlTouchListener());
}
@Override
public …Run Code Online (Sandbox Code Playgroud) android android-mediaplayer textureview android-textureview android-recyclerview
我一直在研究一个包含地图的项目,但是我犯了一个错误,我不得不创建一个新项目.我复制了我所有的课程,res文件夹,图书馆等.但是现在我得到了101个错误!
对此有一个很大的打击:
包com.google.maps不存在.
我选择了一个目标google api:

我已将jar文件包含为依赖项,如下所示:

它在我之前的项目中运行良好,但现在我不得不创建一个它不起作用的新项目.我显然忽略了一些东西,但我想不出什么.我正在使用Android Studio,它是一个gradle构建
如果有人可以帮助我,我会非常感激,因为它非常令人沮丧......
哦,我在我的清单中宣布了它
<uses-library android:name="com.google.android.maps" />
Run Code Online (Sandbox Code Playgroud)
所以,如果有人在我欣赏它之前遇到过这个问题.我已经在线搜索并查看了这个:
http://code.davidjanes.com/blog/2009/11/13/18-hours-of-jar-hell-with-android-google-maps/
虽然有帮助但它告诉我我已经知道的...所以请帮助!!
编辑
好的,我知道问题是什么,我只是不知道如何解决它.我正在引用maps.jar,但是,在这个项目中没有maps.jar,在我以前的项目中有外部库.外部库有Android 4.1.2 Google API,其中包含maps.jar,但是,我似乎无法使用包含该外部库的项目创建项目,我不知道为什么.我试图通过转到文件 - >其他设置 - >默认项目结构并在那里更改它来改变构建目标但是它不起作用...任何人都可以建议我可能需要做什么以确保我是否创建了一个项目将Google API包含在外部库中吗?或者我需要对当前项目做出哪些更改
这个问题已被多次询问,但我没有找到任何解决方案.在我的应用程序中,用户发送消息和图片.直到过去几天,与此相关的问题都没有.
但是在过去的几天里我收到了这个错误:
D/Twitter更新错误:403:请求已被理解,但已被拒绝.随附的错误消息将解释原因.由于更新限制而拒绝请求时使用此代码(https://support.twitter.com/articles/15364-about-twitter-limits-update-api-dm-and-following).message - 您的凭据不允许访问此资源.代码 - 220
我一直在测试应用程序,但我不认为我可能超出任何限制.我注意到最近有很多关于此事的帖子.有没有人对此有任何解决方案?甚至任何信息.
谢谢
我有一个带有不同View Holders的回收站视图.
一些视图持有者具有图像视图,我将其传递到Glide以显示图像.
问题是,当回收者视图开始回收视图时,imageview宽度/高度是回收视图的宽度/高度,然后他们会错误地显示图像.
这是我的ImageView:
<ImageView
android:id="@+id/image"
android:layout_marginTop="@dimen/feed_item_margin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"/>
Run Code Online (Sandbox Code Playgroud)
这被传递到Glide
Glide.with(itemView.getContext())
.load(Uri.parse(MediaUtils
.getMedia(feedContent).getMediaUrl()))
.placeholder(R.drawable.placeholder)
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.crossFade().into(image);
Run Code Online (Sandbox Code Playgroud)
这种方法很有效,直到Recyclerview开始回收,因此recyclerview中的第一个图像看起来就像是它的外观.
但是,当您从项目滚动并向后滚动时,它看起来像这样:
因此图像变得扭曲,并不是父母的全宽.
我希望图像视图包装内容,因为所有图像都是不同的高度等.为了测试这个,我添加了这一行,holder.setIsRecyclable(false);以防止这个特定的持有人和所有显示的图像的回收,但是,正如预期的那样,这给了刺耳的感觉影响.
所以我尝试重置方法中的图像视图的参数,OnViewRecycled如下所示:
@Override
public void onViewRecycled(AbstractHolder viewHolder){
super.onViewRecycled(viewHolder);
int position = viewHolder.getAdapterPosition();
IFeedContent content = mFeedContentList.get(position);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
params.setMargins(0, (int) Utils.dpTopx(mContext,10),0,0);
params.gravity = Gravity.CENTER;
if(isImage(content)){
viewHolder.getImageView().setImageURI(null);
viewHolder.getImageView().setImageDrawable(null);
viewHolder.getImageView().setImageResource(0);
viewHolder.getImageView().setLayoutParams(params);
}
}
Run Code Online (Sandbox Code Playgroud)
在这个我重新创建xml中的参数但它不起作用.isImage() 这只是检查对象的mimetype的方法.
任何人都可以帮忙吗?这非常令人沮丧.
对此有任何帮助表示赞赏.
EDIT 适配器已添加
public class ContentFeedAdapter extends RecyclerView.Adapter<AbstractHolder> {
private List<IFeedContent> mFeedContentList;
private Context mContext;
private …Run Code Online (Sandbox Code Playgroud) android android-viewholder android-recyclerview android-glide
我最近将Android Studio更新为2.0.我正在从事兼职课程,我必须参与提供的项目.当gradle尝试构建项目时,弹出一个对话框,要求我更新android studio gradle插件.当我点击更新时,我收到了标题中的错误.
我的gradle文件如下:
Gradle Wrapper:
#Wed Sep 30 11:56:02 PDT 2015
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-2.2-bin.zip
Run Code Online (Sandbox Code Playgroud)
模块Gradle:
apply plugin: 'com.android.application'
apply plugin: 'android-apt'
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.example.sam_chordas.stockhawk"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
repositories {
maven { url "https://jitpack.io" }
}
dependencies {
compile 'com.google.android.gms:play-services-gcm:8.4.0'
compile 'com.squareup.okhttp:okhttp:2.5.0'
apt 'net.simonvt.schematic:schematic-compiler:0.6.3'
compile 'net.simonvt.schematic:schematic:0.6.3'
compile 'com.melnykov:floatingactionbutton:1.2.0'
compile 'com.android.support:design:23.1.1'
compile('com.github.afollestad.material-dialogs:core:0.8.5.7@aar') { …Run Code Online (Sandbox Code Playgroud) android android-studio android-gradle-plugin gradle-plugin android-studio-2.0
所以我有一个活动和两个片段。
编辑
所以有两种显示Fragment 2的方式,第一种是通过在Fragment 1中点击显示,另一种是在启动主机活动时显示Fragment 2。无论如何,每次都调用相同的方法。但是,当直接从 Activity 启动 Fragment2 时,工具栏会按预期显示,但如果从 Fragment1 启动,则 Fragment 2 工具栏显示如下。
所以我认为问题是我不允许将工具栏切换为 supportActionBar?在片段 1 中,我将片段工具栏设置为操作栏,片段 2 工具栏也是如此。有没有办法做到这一点?
所以我的设置方式是我的活动布局如下:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/rootLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/location_container"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<FrameLayout
android:id="@+id/area_container"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
我正在使用两个框架布局,因为我希望在从片段 2 返回时仍显示片段 1。
fragment1 的布局如下:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:daft="http://schemas.android.com/tools"
android:id="@+id/rootLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:id="@+id/search_results_appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.Toolbar
android:id="@+id/test_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:theme="@style/HomeScreenToolbarTheme"
my:titleTextAppearance="@style/DaftTheme.ActionBarStyle.TitleTextStyle"
app:layout_scrollFlags="scroll|enterAlways">
</android.support.v7.widget.Toolbar>
</android.support.design.widget.AppBarLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<TextView
android:id="@android:id/empty"
android:visibility="gone"
style="@style/daft_progressbar_text" …Run Code Online (Sandbox Code Playgroud) android android-fragments android-toolbar android-coordinatorlayout
我正在从应用程序将数据发送到热敏打印机。我已经使它可以通过网络正常工作,并且我的数据可以正确打印。现在还有一个附加要求,即我们还必须能够通过usb打印。
这是我尝试过的:
private UsbManager mUsbManager;
private UsbDevice mDevice;
private UsbDeviceConnection mConnection;
private UsbInterface mInterface;
private UsbEndpoint mEndPoint;
private PendingIntent mPermissionIntent;
private static final String ACTION_USB_PERMISSION = "com.android.example.USB_PERMISSION";
private static Boolean forceCLaim = true;
HashMap<String, UsbDevice> mDeviceList;
Iterator<UsbDevice> mDeviceIterator;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
mUsbManager = (UsbManager) getSystemService(Context.USB_SERVICE);
mDeviceList = mUsbManager.getDeviceList();
mDeviceIterator = mDeviceList.values().iterator();
Button print = (Button)findViewById(R.id.print);
Toast.makeText(this, "Device List Size: " + String.valueOf(mDeviceList.size()), Toast.LENGTH_SHORT).show();
TextView textView = (TextView) findViewById(R.id.usbDevice);
String usbDevice = "";
//This is just …Run Code Online (Sandbox Code Playgroud) 我正在使用 Epson ePOS 打印机 TM-T20,并且我已经运行了 SDK 示例并且它可以工作,但是,我正在尝试编写一个用于打印的小型应用程序。
成功找到打印机,数据发送成功,但不打印。如果有人可以帮助我,我将不胜感激。
这是我的代码:
显现
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.garydoolin.newepsontest" >
<uses-permission android:name="android.permission.USB"></uses-permission>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MyActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
android:resource="@xml/device_filter" />
</activity>
</application>
Run Code Online (Sandbox Code Playgroud)
这是我的主要活动
package com.example.test.newepsontest;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.epson.eposprint.Builder;
import com.epson.eposprint.EposException;
import com.epson.eposprint.Print;
import com.epson.epsonio.DevType;
import com.epson.epsonio.DeviceInfo;
import com.epson.epsonio.EpsonIoException;
import …Run Code Online (Sandbox Code Playgroud) 我希望坚持一些数据类.我一直在调查使用Room这个,如果它只是一个独立的数据类的情况,这是非常直接的.然而,我试图坚持的对象是子类,这增加了一层复杂性.
此代码尚未编译,因此仅用于说明目的
所以用一个简单的直接课程
@Entity(tableName = TABLE_NAME)
public class Event implements MyEvent {
public static final String TABLE_NAME = "events";
public static final String DATE_FIELD = "date";
@PrimaryKey(autoGenerate = true)
private int id;
private String name;
private String description;
@ColumnInfo(name = DATE_FIELD)
private LocalDateTime date;
public Event(int id, String name, String description, LocalDateTime date) {
this.id = id;
this.name = name;
this.description = description;
this.date = date;
}
@Override
public int getId() {
return id;
}
@Override
public String getName() { …Run Code Online (Sandbox Code Playgroud) android ×10
android-room ×1
connectivity ×1
epson ×1
facebook ×1
google-maps ×1
java ×1
printing ×1
sdk ×1
textureview ×1
twitter ×1
twitter4j ×1
usb ×1