小编Jer*_*gan的帖子

如何将超类型列表转换为子类型列表?

例如,假设您有两个类:

public class TestA {}
public class TestB extends TestA{}
Run Code Online (Sandbox Code Playgroud)

我有一个返回a的方法,List<TestA>我想将该列表中的所有对象强制转换为TestB最终得到一个List<TestB>.

java generics collections casting list

231
推荐指数
10
解决办法
23万
查看次数

如何设置视图的背景颜色

我正在尝试设置视图的背景颜色(在本例中为Button).

我用这个代码:

// set the background to green
v.setBackgroundColor(0x0000FF00 );
v.invalidate();
Run Code Online (Sandbox Code Playgroud)

它会导致Button从屏幕上消失.我做错了什么,以及在任何视图上更改背景颜色的正确方法是什么?

谢谢.

android background view colors set

171
推荐指数
13
解决办法
41万
查看次数

Android屏幕键盘自动弹出

我的一个应用程序有一个"打开屏幕"(基本上是一个菜单),EditText后面跟着几个Buttons.问题是,我的一些用户报告说,当他们打开应用程序时,它会自动弹出屏幕键盘而不会触摸屏幕EditText.据我所知,所有这些用户都在使用HTC Hero.

这是1.5中的错误吗?我能做些什么吗?

android android-softkeyboard

137
推荐指数
5
解决办法
11万
查看次数

使用Android播放任意音调

有没有办法让Android发出任意频率的声音(意思是,我不想有预先录制的声音文件)?

我环顾四周,ToneGenerator是我唯一能找到甚至接近的东西,但它似乎只能输出标准的DTMF音调.

有任何想法吗?

audio android

87
推荐指数
4
解决办法
8万
查看次数

问题解组parcelables

我有一些实现Parcelable的类,其中一些类作为属性互相包含.我正在将类编组为一个,以便在活动之间传递它们.将它们编组到包裹中工作正常,但是当我尝试解组它们时,我收到以下错误:

...
AndroidRuntime  E  Caused by: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: schemas.Arrivals.LocationType
AndroidRuntime  E   at android.os.Parcel.readParcelable(Parcel.java:1822)
AndroidRuntime  E   at schemas.Arrivals.LayoverType.<init>(LayoverType.java:121)
AndroidRuntime  E   at schemas.Arrivals.LayoverType.<init>(LayoverType.java:120)
AndroidRuntime  E   at schemas.Arrivals.LayoverType$1.createFromParcel(LayoverType.java:112)
AndroidRuntime  E   at schemas.Arrivals.LayoverType$1.createFromParcel(LayoverType.java:1)
AndroidRuntime  E   at android.os.Parcel.readTypedList(Parcel.java:1509)
AndroidRuntime  E   at schemas.Arrivals.BlockPositionType.<init>(BlockPositionType.java:244)
AndroidRuntime  E   at schemas.Arrivals.BlockPositionType.<init>(BlockPositionType.java:242)
AndroidRuntime  E   at schemas.Arrivals.BlockPositionType$1.createFromParcel(BlockPositionType.java:234)
AndroidRuntime  E   at schemas.Arrivals.BlockPositionType$1.createFromParcel(BlockPositionType.java:1)
...
Run Code Online (Sandbox Code Playgroud)

LayoverType班(其中它的失败):

public class LayoverType implements Parcelable {    
    protected LocationType location;
    protected long start;
    protected long end;

    public LayoverType() {}

    public LocationType getLocation() …
Run Code Online (Sandbox Code Playgroud)

java android marshalling parcelable

59
推荐指数
7
解决办法
4万
查看次数

检测哪个选定项(在ListView中)产生了ContextMenu(Android)

我有一个ListView,允许用户长按项目以获取上下文菜单.我遇到的问题是确定ListItem他们长期压迫的问题.我试过这样做:

myListView.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
  @Override public void onCreateContextMenu(ContextMenu menu, final View v, ContextMenuInfo menuInfo) {
   menu.add("Make Toast")
    .setOnMenuItemClickListener(new OnMenuItemClickListener() {
     @Override public boolean onMenuItemClick(MenuItem item) {
      String toastText = "You clicked position " + ((ListView)v).getSelectedItemPosition();
      Toast.makeText(DisplayScheduleActivity.this, toastText, Toast.LENGTH_SHORT).show();
      return true;
     }
    });
  } 
 });
Run Code Online (Sandbox Code Playgroud)

但它只是挂起,直到ANR弹出.我怀疑创建菜单后ListItem不再选择.

看起来您可以监控点击或长按,然后在那里记录点击的项目:

 mArrivalsList.setOnItemLongClickListener(new OnItemLongClickListener() {
  @Override public boolean onItemLongClick(AdapterView<?> parent, View v, int position, long id) {
   // record position/id/whatever here
   return false;
  }
 });
Run Code Online (Sandbox Code Playgroud)

但这对我来说感觉很重要.有没有人有更好的解决方案呢?

android listview contextmenu

56
推荐指数
2
解决办法
6万
查看次数

如何映射"根"Servlet以便其他脚本仍可运行?

我正在尝试构建一个调用类似于以下内容的JSP页面的Servlet:

public void doGet(HttpServletRequest req, HttpServletResponse resp)
        throws IOException, ServletException {
    req.getRequestDispatcher("/WEB-INF/main.jsp").forward(req, resp);
}
Run Code Online (Sandbox Code Playgroud)

我需要这个Servlet来响应域的根(例如:http://example.com/)所以我在web.xml中使用以下映射:

<servlet-mapping>
    <servlet-name>MainServlet</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是它匹配一切,所以当调度程序转发到"/WEB-INF/main.jsp"时,这与url-pattern匹配,以便Servlet再次运行.这会产生一个循环,直到它以java.lang.StackOverflowError消失.

如何在不阻止其他脚本运行的情况下匹配根目录?

java google-app-engine web.xml servlets

53
推荐指数
4
解决办法
3万
查看次数

如何在HttpURLConnection上设置内容类型?

你知道如何设置Content-TypeHttpURLConnection的

以下代码在Blackberry上,我想要Android等价:

connection.setRequestProperty("content-type", "text/plain; charset=utf-8");
connection.setRequestProperty("Host", "192.168.1.36"); 
connection.setRequestProperty("Expect", "100-continue");
Run Code Online (Sandbox Code Playgroud)

它适合Android吗?

请指教.

android httpurlconnection

45
推荐指数
2
解决办法
9万
查看次数

如何从linux命令行获取视频文件的分辨率(宽度和高度)?

我一直在挖掘mplayer/mencoder和ffmpeg文档,我似乎无法想出任何东西.我对输出格式并不是特别挑剔,因为我可以使用正则表达式将其拉出来,我似乎无法在第一时间获取数据.

linux video command-line ffmpeg resolution

43
推荐指数
6
解决办法
7万
查看次数

如何计算Java中的时间跨度并格式化输出?

我想拍两次(自纪元以来几秒钟),并以两种格式显示两者之间的差异:

  • 2分钟
  • 1小时15分钟
  • 3小时9分钟
  • 1分钟前
  • 1小时,2分钟前

我该怎么做到这一点?

java formatting time date

42
推荐指数
5
解决办法
7万
查看次数