小编Psy*_*her的帖子

获取微调器选定的项目文本?

如何获取微调器选定项目的文本?

当我点击保存按钮时,我必须在我的微调器中选择项目上的文本.我需要的文字不是索引.

android android-spinner

347
推荐指数
10
解决办法
36万
查看次数

从Activity外部调用startActivity()?

我正在使用一个AlarmManager触发广播信号的意图.以下是我的代码:

AlarmManager mgr = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(this, Wakeup.class);
try
{
    PendingIntent pi = PendingIntent.getBroadcast(this, 0, i, 0);
    Long elapsed +=  // sleep time;
    mgr.set(AlarmManager.RTC_WAKEUP, elapsed, pi);
}
catch(Exception r)
{
    Log.v(TAG, "RunTimeException: " + r);
}
Run Code Online (Sandbox Code Playgroud)

我从一个调用这个代码Activity,所以我不知道如何得到以下错误...

ERROR/AndroidRuntime(7557): java.lang.RuntimeException: Unable to start receiver com.wcc.Wakeup: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity  context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
Run Code Online (Sandbox Code Playgroud)

android alarmmanager runtimeexception android-pendingintent

181
推荐指数
5
解决办法
18万
查看次数

onCheckedChanged自动调用

我在recyclerview中有一个开关,在从DB检索数据后,数据显示在recyclerview中.打开recyclerview时,我读DB,如果DB中的字段是"Y",我启用开关,否则我禁用开关.现在问题是它还调用了onCheckedchanged侦听器,我希望只有当用户手动设置开关时才调用onCheckedChanged.

在打开时,执行下面的recyclerview:

holder.enabledisable.setChecked(messengerRecord.get_is_valid().equalsIgnoreCase("Y"));
Run Code Online (Sandbox Code Playgroud)

ViewHolder类:

public class viewHolder extends RecyclerView.ViewHolder implements CompoundButton.OnCheckedChangeListener{
public SwitchCompat enabledisable;
 public viewHolder(View v) {
            enabledisable = (SwitchCompat) v.findViewById(R.id.enabledisable);
            enabledisable.setOnCheckedChangeListener(this);
...................................
...................................
Run Code Online (Sandbox Code Playgroud)

刚刚打开recyclerView时调用的OncheckedChanged方法:

@Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            Log.v("ranjith","called oncheckedchanged");
            MessengerRecord rec;
            rec = dbHelper.getRecord(descview.getText().toString());
            switch (buttonView.getId()) {
                case R.id.enabledisable:
                    if (isChecked) {
                        rec.set_is_valid("Y");
                        dbHelper.updateRecord(rec);
                     }
}
Run Code Online (Sandbox Code Playgroud)

在布局文件中:

<android.support.v7.widget.SwitchCompat
    android:layout_marginRight="16dp"
    android:layout_marginEnd="16dp"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:focusable="false"
    android:id="@+id/enabledisable"
    android:layout_alignRight="@+id/textview_to"
    android:layout_alignEnd="@+id/textview_to"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"/>
Run Code Online (Sandbox Code Playgroud)

android oncheckedchanged android-switch switchcompat android-recyclerview

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

Android v7工具栏按钮对齐

android.support.v7.widget.Toolbar在我的应用程序中使用下面的代码添加,现在我想在工具栏的右端显示一个按钮,但是无法执行此操作.

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/accent_color"
    android:minHeight="?attr/actionBarSize"
    android:layout_alignParentTop="true"
    tools:context=".MyActivity"
    android:theme="@style/ThemeOverlay.AppCompat.ActionBar">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/showevents"
        android:textSize="12sp"
        android:background="@null"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:textColor="@color/white"
        android:text="UPCOMING \nEVENTS"/>
</android.support.v7.widget.Toolbar>
Run Code Online (Sandbox Code Playgroud)

我也添加了以下显示,但它没有移动到右边.

android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
Run Code Online (Sandbox Code Playgroud)

附图供参考:

在此输入图像描述

android android-layout android-actionbar android-actionbar-compat android-toolbar

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

在Android中检索来电的电话号码

我想检索来电的电话号码,并像http://blog.whitepages.com/2009/02/27/caller-id-by-whitepages-a-new-android-app-中的那样做.即,看跌期权-电话销售上的警报/

能不能请你帮忙,因为我找不到任何关于此的信息.我从哪里开始,如何掌握电话号码?


好的,目前我的代码如下所示.当我拨打电话时,CustomBroadcastReceiver捕获它并打印出日志消息.我可以从捆绑中检索电话号码.但!我不能让他的CustomPhoneStateListener工作.正如您所看到的,我已将customPhoneState侦听器注册到接收器,但日志消息永远不会从CustomPhoneStateListener类中打印出来.我在这里失踪了什么?我的想法是否正确?


<receiver android:name=".CustomBroadcastReceiver">
        <intent-filter>
            <action android:name="android.intent.action.PHONE_STATE" /> 
        </intent-filter>
</receiver>

</application>
<uses-sdk android:minSdkVersion="5" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
Run Code Online (Sandbox Code Playgroud)
public class CustomPhoneStateListener extends PhoneStateListener {

private static final String TAG = "CustomPhoneStateListener";

public void onCallStateChange(int state, String incomingNumber){

    Log.v(TAG, "WE ARE INSIDE!!!!!!!!!!!");
    Log.v(TAG, incomingNumber);

    switch(state){
        case TelephonyManager.CALL_STATE_RINGING:
            Log.d(TAG, "RINGING");
            break;
    }   
}
Run Code Online (Sandbox Code Playgroud)
public class CustomBroadcastReceiver extends BroadcastReceiver {

private static final String TAG = "CustomBroadcastReceiver";

@Override
public void onReceive(Context context, Intent intent) …
Run Code Online (Sandbox Code Playgroud)

android telephonymanager phone-state-listener

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

在Recyclerview中嵌入广告

我正在尝试将我的应用程序从listview升级到recyclerview.当我使用listview时,我使用本教程在listview中嵌入了广告.

我无法在recyclerview中添加它.有关如何在Recyclerview中完成此操作的任何观点?

目前在我的列表视图中,加载广告的代码如下:

    if ((position % k) == 0) {
      if (convertView instanceof AdView) {
        return convertView;
      } else {
        // Create a new AdView
        AdView adView = new AdView(activity, AdSize.BANNER,
                                   ADMOB_ID);

        float density = activity.getResources().getDisplayMetrics().density;
        int height = Math.round(AdSize.BANNER.getHeight() * density);
        AbsListView.LayoutParams params = new AbsListView.LayoutParams(
            AbsListView.LayoutParams.FILL_PARENT,
            height);
        adView.setLayoutParams(params);

        adView.loadAd(new AdRequest());
        return adView;
      }
    } else {
      return delegate.getView(position - (int) Math.ceil(position / k) - 1,
          convertView, parent);
    }
Run Code Online (Sandbox Code Playgroud)

它应该是这样的:

ListView项目

更新:从谷歌引用此视频,它给出了完整的解释

android listview android-appcompat admob android-recyclerview

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

在不使用循环的情况下在ObservableCollection中查找项

目前我有以下语法(list是包含具有许多不同属性的对象的列表(其中Title是其中之一):

for (int i=0; i < list.Count; i++)
{
   if(title == list[i].Title)
   {
    //do something
   }
}
Run Code Online (Sandbox Code Playgroud)

如何在list[i].Title不必遍历整个集合的情况下访问它?由于我的列表越来越大,这可能会影响我的程序的性能.

我在我的程序中有很多类似的语法(通过for循环和索引访问公共属性).但我确定必须有一个更好,更优雅的方式来做到这一点?

由于我的列表包含对象,因此find方法似乎确实是一个选项.

c# collections wpf

31
推荐指数
4
解决办法
9万
查看次数

无法在Recyclerview下面添加空视图

我正在尝试使用recyclerview和浮动操作按钮来创建应用程序.我遇到的问题是浮动操作按钮阻碍了recyclerview中的按钮.我查看了Android应用程序如手机应用程序(你在gridvew中显示的联系人)是如何设计来处理这个问题的,我看到底部留有空白空间,在recyclelerview和浮动操作按钮之间留出空间,用户只需滚动到底部以避免重叠.我尝试在recyclelerview之后添加一个视图,但不会显示它,此视图也应该与recyclerview行一起移动.在Recyclerview的最后,我缺少什么来显示视图.我的布局文件:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="#6fbababa">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/my_recycler_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:scrollbars="vertical"/>

    <ImageButton
        android:id="@+id/button_floating_action"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:src="@drawable/ic_fab"
        android:background="@null"
        android:layout_alignParentBottom="true"
        android:layout_marginBottom="12dp"
        android:layout_marginEnd="12dp"
        android:layout_marginRight="12dp"
        android:elevation="2dp"/>

    <View
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:layout_below="@id/my_recycler_view"
        android:background="@color/white"/>

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

更新:修改布局代码以使其工作.

<android.support.v7.widget.RecyclerView 
android:id="@+id/my_recycler_view" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:clipToPadding="false" 
android:paddingBottom="30dp" 
android:scrollbars="vertical"/>
Run Code Online (Sandbox Code Playgroud)

android android-layout recycler-adapter android-recyclerview

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

FloatingActionButton默认边距在棒棒糖中不起作用

我在FloatingActionButtona Recyclerview中显示a CoordinatorLayout,当单击FAB时,将添加一行Recyclerview.现在问题是当我在API 15中测试时FAB有余量,但是当我在API 22(棒棒糖5.1.1-Nexus 4)中测试时,我没有得到任何余量并且FAB被按到屏幕的边缘.

我担心的是FAB在API 15中有默认的边距设置(没有测试其他设备)但在API 22中没有,或者我错过了什么.

我的布局代码:

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#6fbababa"
    android:fitsSystemWindows="true">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/my_recycler_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:clipToPadding="false"
        android:paddingBottom="@dimen/fab_padding_bottom"
        android:scrollbars="vertical"
        app:layout_behavior="@string/appbar_scrolling_view_behavior" />

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#ffffff">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:fitsSystemWindows="true"
            android:orientation="horizontal"
            app:layout_scrollFlags="scroll|enterAlwaysCollapsed">
            ---------------------
            ---------------------    
        </LinearLayout>

    </android.support.design.widget.AppBarLayout>

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/button_floating_action"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:src="@drawable/ic_plus"
        app:borderWidth="0dp"
        app:layout_anchor="@id/my_recycler_view"
        app:layout_anchorGravity="bottom|right|end"
        app:rippleColor="@color/wallet_highlighted_text_holo_light" />

</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

android floating-action-button androiddesignsupport coordinator-layout android-coordinatorlayout

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

SwitchCompat抛出错误

我试图在我的片段中使用switchcompat.min支持的API是14,最大值是21.我正在尝试应用材质视图来切换所有pre lollipop android版本.但是当使用下面的代码时我得到一个错误:我该如何纠正它?

<android.support.v7.widget.SwitchCompat
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />
Run Code Online (Sandbox Code Playgroud)

在抛出异常的java代码中膨胀:

 @Override                                                                                       
 public View onCreateView(LayoutInflater inflater, ViewGroup container,                          
                          Bundle savedInstanceState) {                                           
     final View view = inflater.inflate(R.layout.fragment_scheduler_ui, container, false);   
Run Code Online (Sandbox Code Playgroud)

参考:http: //android-developers.blogspot.in/2014/10/appcompat-v21-material-design-for-pre.html

例外:

10-24 14:15:15.880    1561-1561/com.stackoverflow.ranjith.androidprojdel E/AndroidRuntime? FATAL EXCEPTION: main
Process: com.stackoverflow.ranjith.androidprojdel, PID: 1561
java.lang.NullPointerException
        at android.text.Layout.getDesiredWidth(Layout.java:67)
        at android.support.v7.widget.SwitchCompat.makeLayout(SwitchCompat.java:570)
        at android.support.v7.widget.SwitchCompat.onMeasure(SwitchCompat.java:495)
        at android.view.View.measure(View.java:16497)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
        at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1404)
        at android.widget.LinearLayout.measureVertical(LinearLayout.java:695)
        at android.widget.LinearLayout.onMeasure(LinearLayout.java:588)
        at android.view.View.measure(View.java:16497)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
        at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
        at android.view.View.measure(View.java:16497)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
        at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
        at android.view.View.measure(View.java:16497)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125)
        at com.android.internal.widget.ActionBarOverlayLayout.onMeasure(ActionBarOverlayLayout.java:327)
        at android.view.View.measure(View.java:16497)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5125) …
Run Code Online (Sandbox Code Playgroud)

android android-appcompat android-switch

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