Tag: android

RecyclerView不能调用任何Adapter方法:onCreateViewHolder,onBindViewHolder,

我的RecyclerView不会调用onCreateViewHolder onBindViewHolder,因此,在回收站视图中不会显示任何内容。 我把日志进行debugging,并没有显示日志。 可以是什么? 我的适配器: public class CommentListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{ private static final int EMPTY_VIEW = 10 ; private ArrayList<comment> mItems; Boolean firstTime = true; private Typeface mTf = null; Context mContext; public CommentListAdapter(Context context,ArrayList<comment> items){ Log.e("Adapter", "constructor Called"); this.mItems = items; mContext = context; } public class EmptyViewHolder extends RecyclerView.ViewHolder { public EmptyViewHolder(View itemView) […]

android查看performClick()和callOnClick()的区别

我认为标题是不言自明的。 这两者之间的用法有什么不同? 看来他们的工作方式是一样的,但为什么view有两个方法呢?

Android:创build一个圆形的TextView?

我目前的简单的XML是在下面,但是我希望其中的3个TextViews是圆形的,而不是矩形。 我怎样才能改变我的代码呢? <?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:orientation="vertical" > <TextView android:id="@+id/tvSummary1" android:layout_width="270dp" android:layout_height="60dp" > </TextView> <TextView android:id="@+id/tvSummary2" android:layout_width="270dp" android:layout_height="60dp" > </TextView> <TextView android:id="@+id/tvSummary3" android:layout_width="270dp" android:layout_height="60dp" > </TextView> </LinearLayout> 注意:我想要一个实际的圆形而不是如下所示的弧形边缘矩形: 编辑: 当前代码: <?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:orientation="vertical" > <TextView android:id="@+id/tvSummary1" android:layout_width="270dp" android:layout_height="60dp" android:text=" " android:gravity="left|center_vertical" android:background="@drawable/circle"/> <TextView android:id="@+id/tvSummary2" android:layout_width="270dp" android:layout_height="60dp" android:background="@drawable/circle" […]

Android透明TextView?

简单地说, 如何使TextView透明? (不完全透明) 我搜查了文档和StackNetwork,找不到它? 我猜这是这样的。 谢谢。 UPDATE 这是XML代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center_horizontal" android:orientation="vertical" android:background="@drawable/background"> <ImageView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/header" android:src="@drawable/logo1" /> <ListView android:id="@android:id/list" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1" android:paddingRight="5dp" android:scrollbarStyle="outsideOverlay" android:cacheColorHint="#00000000" /> <TextView android:id="@+id/footer" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="25sp" android:singleLine="true" android:background="#07000000" android:textColor="#FFFFFF" android:text="rrrrr" /> </LinearLayout> 我希望页脚 TextView是透明的, so that the ListView items can be seen while scrolling

将JSONObject传递给另一个活动

我打了一个外部的API返回JSON数据(新的DVD标题)。 我能parsing出JSON,并列出每个DVD标题和其他DVD信息到一个ListView就好了。 我也能够为原始数据(标题string)设置一个onListItemClick方法。 我最终为onListItemClick方法写了类似的东西: 需要注意的是,productArray是一个由另一个包含JSONObjects数组的方法设置的类var。 protected void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); Intent i = new Intent(DvdListingActivity.this, MovieProductActivity.class); try { JSONObject jsonObj = productArray.getJSONObject(position); i.putExtra("mTitle", jsonObj.getJSONObject("Title").opt("val").toString()); i.putExtra("mRelDate", jsonObj.getJSONObject("RelDate").opt("val").toString()); i.putExtra("mDesc", jsonObj.getJSONObject("Desc").opt("val").toString()); i.putExtra("mRating", jsonObj.getJSONObject("MPAA").getJSONObject("Rating").opt("val").toString()); i.putExtra("mActors", jsonObj.getJSONObject("Actors").opt("val").toString()); i.putExtra("mImage", jsonObj.getJSONObject("Image").opt("val").toString()); startActivity(i); } catch (JSONException e) { // TODO Auto-generated catch block […]

如何按字母顺序sorting而忽略区分大小写?

我有这个代码,但只适用于小写字母。 我想这个sorting列表,而忽略大写字母.. package sortarray.com; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.widget.TextView; public class SortArray extends Activity { ArrayList<String[]> matchedFruits = new ArrayList<String[]>(); TextView selection; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); String fruits[] = new String[7];// Sorted array fruits[0] = "apple"; fruits[1] = "apricot"; fruits[2] = "banana"; fruits[3] = […]

什么在TtsService可以解释缺乏onUtteranceCompleted()playEarcon()?

前段时间,我发现playEarcon() 永远不会产生 onUtteranceCompleted() 。 当时我只是解释说“当话语被合成时调用”的文档,因为onUtteranceCompleted()不适用于earcons,因为earcon实际上不是TTS合成的结果。 但再次看Android的源代码,我根本无法find一个解释,certificate我的解释。 关于我的testing夹具的一些事实: onUtteranceCompleted()总是到达earcon之前的话语ID。 这个话语是一种普通的TTS话语,而不是一个耳塞。 之后的耳朵确实发挥出来(即完全按照预期)。 onUtteranceCompleted()对于这个earcon 永远不会出现。 这是非常一致和可重复的行为。 深入研究TtsService源代码,似乎只有两种方法可能影响onUtteranceCompleted()的到来(或不存在onUtteranceCompleted() : TtsService.processSpeechQueue() TtsService.onCompletion() 如果你检查这个代码,你会发现第三个候选人TtsService.getSoundResource()被排除了(因为我的earcon缺lessonUtteranceComplete),因为上面的事实#2:earcon总是玩,因此getSoundResource()不可能返回null。 使用相同的逻辑,也可以排除第一候选者TtsService.processSpeechQueue() ,对于同样的事实#2:earcon始终播放,因此总是执行以下2个关键语句: 1108 mPlayer.setOnCompletionListener(this); … 1111 mPlayer.start(); 所以,我们只剩下第二个候选人, TtsService.onCompletion() ,作为一个playEarcon() 永远不会产生 onUtteranceCompleted()的可能解释: public void onCompletion(MediaPlayer arg0) { // mCurrentSpeechItem may become null if it is stopped at the same // time it completes. SpeechItem currentSpeechItemCopy = mCurrentSpeechItem; […]

从现有帐户服务types创build电子邮件帐户

我已经通过Android文档提供的SampleSyncAdapter示例项目,但据我所知,我们需要添加一个帐户的自定义帐户服务。 但我的需要是从设备上的现有帐户服务创build一个电子邮件帐户。 为了更清楚我的问题,我举了一个例子 以下是我的设备上提供的帐户服务 我想在每个Android设备上都可以使用“Google”和“电子邮件”帐户服务。 现在我想configuration一个“电子邮件”帐户,所以我必须遵循以下步骤: 步骤1:input现有的电子邮件ID和密码 步骤2:[a]常规设置属性: – (帐户名称,真实姓名,电子邮件地址) 步骤2:[b]传入服务器属性: – (POP或IMAP邮件服务器,服务器地址,用户名,密码) 第2步:[c]发送服务器属性: – (SMTP服务器,用户名,密码) 步骤3:通过select高级设置,我们可以configuration端口和证书选项。 我们需要手动完成上述步骤, 但是我想通过使用以上所有设置以编程方式创build一个电子邮件帐户 。 那么我怎样才能从现有的账户服务中编写新的电子邮件账户呢? 我需要MDM的这个function。

强制Android使用RTSP / AVP / TCP交错

我在Galaxy S3上使用Android 4.1.2。 目前android mediaplayer总是尝试使用RTSP UDP(RTP / AVP / UDP)方法连接到RTSP服务器。 如果Android MediaPlayer没有收到其UDP端口上的数据,那么尝试RTSP TCP交错(RTP / AVP / TCP)。 这很好,但延迟了10秒左右。 我想避免这个延迟,并强制Android MediaPlayer始终使用RTSP TCP交错(RTP / AVP / TCP)的所有或特定的URL。 我尝试了在这里给出build议,发送461或400错误响应代码给SETUP请求。 但似乎mediaplayer不关心响应,并发送两个轨道的SETUP命令,然后挂起连接。 我该如何解决这个问题?

CordovaResourceApi导入未解决的phonegap

我使用phonegap-2.9.0与文件插件。 当我为android平台构build项目时,会在src/文件夹中创build两个包: org.apache.cordova.file org.apache.cordova.filetransfer 我在这两个软件包中得到了以下错误: 1 – org.apache.cordova.file.FileUtils Method testSaveLocationExists() from the type DirectoryManager is not visible Method getFreeDiskSpace() from the type DirectoryManager is not visible Method testFileExists() from the type DirectoryManager is not visible 2 – org.apache.cordova.filetransfer.FileTransfer import org.apache.cordova.CordovaResourceApi unresolved import org.apache.cordova.CordovaResourceApi.OpenForReadResult unresolved 有人能告诉我该怎么办才能解决这些问题吗? 谢谢。