问题列表 - 第42556页

扩展应用程序以全局共享变量

我正在尝试在我的应用程序中的各种活动中共享两个ArrayLists,使用此处解释的方案:如何在Android中声明全局变量?.

这是我的应用程序子类:

public class GlobalVars extends Application{
 ArrayList<Player> players = new ArrayList<Player>(); 
  ArrayList<String> playerNames = new ArrayList<String>();

  public ArrayList<Player> getPlayers(){
   return players;
  }

  public ArrayList<String> getPlayerNames(){
   return playerNames;
  }

  public void setPlayers(ArrayList<Player> p){
   players = p;
  }

  public void setPlayerNames(ArrayList<String> pn){
   playerNames = pn;
  }

}
Run Code Online (Sandbox Code Playgroud)

并使用了代码:

 GlobalVars gv = (GlobalVars)getApplicationContext();
        players = gv.getPlayers();
        playerNames = gv.getPlayerNames();
Run Code Online (Sandbox Code Playgroud)

要访问这些变量.我定义gv的第一行引发了classcastexception.谁知道为什么?

这是我添加到清单中的代码:

<application android:name="com.myname.GlobalVars"
 android:icon="@drawable/icon"
 android:label="@string/app_name"></application>
Run Code Online (Sandbox Code Playgroud)

编辑:为了澄清,这是我的整个清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.myname.bpstattracker" android:versionCode="1"
    android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".BPStatTracker" android:label="@string/app_name"> …
Run Code Online (Sandbox Code Playgroud)

android global-variables

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

是否有完整的user32.dll包装程序库可用于.NET?

我正在通过VB.NET对user32.dll进行大量的互操作.由于user32.dll不是在.NET级别,而是在本机级别,我需要使用Declare语句声明这些函数.虽然这很好用,但我一遍又一遍地声明它们.

我在谷歌搜索,但我遇到的唯一有用的网站是pinvoke.net.虽然它确实包含某种程度的信息,但是在其文档中有许多功能要么没有描述,要么有很多"TODO"部分.

因此,我想知道是否有可用于.NET的user32.dll的完整包装器.我一直无法找到任何我害怕,但也许我看起来不正确.

.net windows pinvoke winapi

7
推荐指数
2
解决办法
8403
查看次数

如何记录XML Schema?

我为我编写的应用程序开发了一个XML模式.现在我想记录最终用户的有效结构,但是我无法想出任何自然的方法来做到这一点.我见过像xs3p这样的东西,它实际上将xsd架构转换为HTML表示,但这对我来说看起来不是很好的文档; 用户不需要知道关于模式的任何信息,以了解他可以做什么.

任何想法如何记录这个?任何程序/编辑/图形解决方案或我可以构建的概念?

xml documentation schema xsd

3
推荐指数
1
解决办法
6700
查看次数

任何浏览器都支持CSS3伪元素"标记"吗?

规范指定可以li使用伪元素"marker" 修改list-item()标记,如下所示:

li::marker { color: blue; }
Run Code Online (Sandbox Code Playgroud)

但我似乎无法在任何浏览器中使用它.

有没有浏览器支持这个?或者我做错了什么?

css browser css3

19
推荐指数
1
解决办法
6092
查看次数

有没有我可以在Python中获得有关AttributeError异常的具体细节?

我正在尝试调用一个函数.其中一个参数是带有属性的变量(我知道因为我得到的AttributeError异常).我不知道这个变量应该具有的确切属性,所以我想知道是否有某些方法我可以看到关于异常的一些额外细节,例如,它找不到哪个属性.谢谢.

python error-handling attributes exception

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

谜语:发现这个冒泡排序实现中的严重错误

(不,这不是家庭作业,我刚刚发现了这个bug,并认为在这里分享可能有用)

import java.util.List;

public class BubbleSorter {

    public <T extends Comparable<T>> void sort(List<T> list) {
        while (true) {
            boolean didWork = false;
            for (int i = 0; i < list.size() - 1; ++i) {
                if (list.get(i).compareTo(list.get(i + 1)) > 0) {
                    swap(list, i, i + 1);
                    didWork = true;
                    break;
                }
            }

            if (!didWork)
                return;
        }
    }

    private static <T> void swap(List<T> list, int i, int j) {
        T tmp = list.get(i);
        list.set(i, list.get(j));
        list.set(j, tmp);
    }
}
Run Code Online (Sandbox Code Playgroud)

java sorting bubble-sort

2
推荐指数
1
解决办法
454
查看次数

Perl Unicode故障

在此输出中,为什么在打印非ASCII Unicode字符后会获得额外的换行符?

平台是Windows Vista,问题发生在chcp 65001但不是之后chcp 850

C:\>chcp 850
Active code page: 850

C:\>perl unicode_bug_1.pl
Budweiser
Budweiser
Budweiser
Bud?øjovick?¢ Budvar
Bud?øjovick?¢ Budvar
Bud?øjovick?¢ Budvar

C:\>chcp 65001
Active code page: 65001

C:\>perl unicode_bug_1.pl
Budweiser
Budweiser
Budweiser
Bud?jovický Budvar

Bud?jovický Budvar

Bud?jovický Budvar

来自这个计划

#!perl
use strict;
use warnings;

binmode (STDOUT, "encoding(UTF-8)"); # so no "Wide character in print" warning

print "Budweiser\n" for 1..3;
print "Bud\N{U+011B}jovick\N{U+00FD} Budvar\n" for 1..3;
Run Code Online (Sandbox Code Playgroud)

windows unicode perl utf-8 codepages

5
推荐指数
1
解决办法
1496
查看次数

string.Format表如何在尽可能多的对象中使用?

在使用String.Format()时,我始终处于印象之下,在使用对象数组之前,您只能使用3个对象.

最近我发现情况并非如此,您可以根据需要添加.

如何才能做到这一点?它是否像动态重载一样,或者将它全部转换为数组.

//thought this was the max that could be sent in
String.Format(String, Object, Object, Object);
//before you had to do something like this

object[] format = new object[5];
format[0] = "abc";
...
String.Format(String, format);

// yet it seems you can do
String.Format(String, Object, Object, Object, Object, Object, Object, Object, Object, Object);
Run Code Online (Sandbox Code Playgroud)

c#

1
推荐指数
1
解决办法
225
查看次数

这是一个有效的C语句吗?

假设我用char c[99] = {'Stack Overflow'};C或C++ 编写.它编译好,但这是有效的吗?有效的我意味着不会调用任何未定义或未指定的行为.

再次,如果我写char c[99] = 'Stack Overflow';gcc抱怨多字符常量很明显,但在上面我封闭在大括号内编译器很高兴!为什么会这样?

我还注意到,puts(c);在第一个语句之后,输出'w'恰好是一般字符串的最后一个字符Stack Overflow.为什么这样?

有人可以分别解释这些行为吗?

c c++ gcc

6
推荐指数
1
解决办法
440
查看次数

C:下面的代码无法编译?

  #include <stdio.h> 

   #define IN   1  /* inside a word */ 
   #define OUT  0  /* outside a word */ 

   /* count lines, words, and characters in input */ 
   main() 
   { 
       int c, nl, nw, nc, state; 

       state = OUT; 
       nl = nw = nc = 0; 
       while ((c = getchar()) != EOF) { 
           ++nc; 
           if (c == '\n') 
               ++nl; 
           if (c == ' ' || c == '\n' || c = '\t') 
               state = OUT; 
           else if (state == OUT) { …
Run Code Online (Sandbox Code Playgroud)

c

0
推荐指数
1
解决办法
143
查看次数