小编ישו*_*ותך的帖子

SharedPreferences.onSharedPreferenceChangeListener未被一致地调用

我正在注册这样的偏好更改监听器(在onCreate()我的主要活动中):

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);

prefs.registerOnSharedPreferenceChangeListener(
   new SharedPreferences.OnSharedPreferenceChangeListener() {
       public void onSharedPreferenceChanged(
         SharedPreferences prefs, String key) {

         System.out.println(key);
       }
});
Run Code Online (Sandbox Code Playgroud)

麻烦的是,听众并不总是被召唤.它最初几次更改首选项,然后在卸载并重新安装应用程序之前不再调用它.没有重新启动应用程序似乎修复它.

我发现一个邮件列表线程报告了同样的问题,但没有人真正回答他.我究竟做错了什么?

android android-preferences

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

从DialogFragment接收结果

我正在使用DialogFragments做很多事情:从列表中选择项目,输入文本.

将值(即字符串或列表中的项)返回给调用活动/片段的最佳方法是什么?

目前我正在制作调用活动实现DismissListener,并为DialogFragment提供对活动的引用.然后,Dialog调用OnDimissactivity中的方法,activity将从DialogFragment对象中获取结果.非常混乱,因为DialogFragment失去对活动的引用,它不能用于配置更改(方向更改).

谢谢你的帮助.

android dialog fragment dismiss android-fragments

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

Android Studio渲染问题

我正在使用Android Studio 0.2.3,当正常打开活动布局时,预览应该出现在右侧,这样我就可以在文本设计模式之间切换,这将再次显示布局的预览.

但是当我处于文本模式或设计模式时,右侧都没有显示预览.我刚收到错误rendering problems...

当我编译所有内容并在我的设备上安装应用程序时,它可以正常运行.对于开发和试验布局,如果我可以使预览工作仍然会很好.

我也尝试在工作室中的不同设备之间切换,但没有成功.

有谁知道如何解决这个问题?

android android-version android-studio

191
推荐指数
7
解决办法
36万
查看次数

如何使用值声明ArrayList?

Java中的ArrayList或List声明质疑并回答了如何声明一个空,ArrayList但是如何声明一个带有值的ArrayList?

我尝试了以下但它返回语法错误:

import java.io.IOException;
import java.util.ArrayList;

public class test {
    public static void main(String[] args) throws IOException {
        ArrayList<String> x = new ArrayList<String>();
        x = ['xyz', 'abc'];
    }
}
Run Code Online (Sandbox Code Playgroud)

java initialization arraylist declare

189
推荐指数
6
解决办法
45万
查看次数

Android:从数组编程创建微调器

我是Android新手,我正在尝试以编程方式创建一个微调器并用数组中的数据提供它,但是Eclipse给了我一个我无法处理的警告.

这是我得到的:

这个ArrayList包含应该在微调器中的元素(稍后从文件中填充):

ArrayList<String> spinnerArray = new ArrayList<String>();

这是我在一个应该创建微调器的网站上找到的代码:

Spinner spinner = new Spinner(this);
ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this,
                android.R.layout.simple_spinner_dropdown_item,
                spinnerArray);
spinner.setAdapter(spinnerArrayAdapter);
Run Code Online (Sandbox Code Playgroud)

现在第二行(ArrayAdapter ...)在Eclipse中给我一个警告说"ArrayAdapter is a raw type... References to generic type ArrayAdapter<T> should be parameterized",我不知道如何解决这个问题(或者首先意味着什么:)).

这只是一个警告,应用程序似乎运行良好,但我仍然想了解什么是错误并修复它.任何提示都表示赞赏.

问候,Select0r

android spinner

182
推荐指数
6
解决办法
31万
查看次数

如何在按下时将数据从第二个活动传递到第一个活动? - android

我有2个活动,Activity1Activity2.

Activity1我有一个按钮TextView的.单击按钮时,将启动Activity2.

Activity2我的EditText中.

我想显示从检索到的数据的EditText活性2的TextView活性1当从压回活性2.

有人可以帮助我使用代码来完成这项工作吗?

android parent-child pass-data android-activity

169
推荐指数
4
解决办法
11万
查看次数

如何制作更小的RatingBar?

我在布局中添加了RatingBar:

<RatingBar 
    android:id="@+id/ratingbar"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:numStars="5"
    android:stepSize="1.0"
    />  
Run Code Online (Sandbox Code Playgroud)

但评级栏的默认样式太大.
我试着通过添加android风格来改变它:style="?android:attr/ratingBarStyleSmall"

但结果太小,无法使用此属性设置费率.

我该怎么办?

android android-widget android-styles

129
推荐指数
9
解决办法
15万
查看次数

如何在RecyclerView中更新/刷新特定项目

我正在尝试刷新特定项目RecyclerView.

故事:每当用户点击项目时,它都会显示AlertDialog.用户可以通过单击确定按钮键入一些文本.我想在这个项目中显示这个文本并显示不可见ImageView- 在XML和适配器中声明ViewHolder-

我在AlertDialogPositive Button中使用此函数来更新项目:

private void updateListItem(int position) {
  View view = layoutManager.findViewByPosition(position);
  ImageView medicineSelected = (ImageView) view.findViewById(R.id.medicine_selected);
  medicineSelected.setVisibility(View.VISIBLE);
  TextView orderQuantity = (TextView) view.findViewById(R.id.order_quantity);
  orderQuantity.setVisibility(View.VISIBLE);
  orderQuantity.setText(quantity + " packet added!");

  medicinesArrayAdapter.notifyItemChanged(position);
}
Run Code Online (Sandbox Code Playgroud)

但是这段代码不仅改变了传递位置的itemView,还改变了其他一些itemView(s)!

如何通过单击更改特定的itemView?

android android-adapter recycler-adapter android-recyclerview

96
推荐指数
5
解决办法
15万
查看次数

Android:复选框监听器

我想把一个听众放在一个CheckBox.我查找信息,它是这样的:

satView = (CheckBox)findViewById(R.id.sateliteCheckBox);

satView.setOnCheckedChangeListener(new OnCheckedChangeListener() {
    @Override
    public void onCheckedChanged(RadioGroup group, int checkedId) {
        if (isChecked){
            // perform logic
        }
    }

});
Run Code Online (Sandbox Code Playgroud)

问题是Eclipse认为它是一个OnCheckedChangeListenerfor a RadioGroup并且它不起作用.我怎样才能解决这个问题?

java android android-checkbox

95
推荐指数
5
解决办法
19万
查看次数

parcelable在哪里/何时使用describeContents()?

有谁知道调用Parcelable的这种方法的位置/时间?

@Override
public int describeContents() {
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

它必须被覆盖.但是,我应该考虑做一些有用的事情吗?

android parcel parcelable

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