Stack Overflow

Subscribe to Stack Overflow feed
most recent 30 from stackoverflow.com 2017-09-23T21:24:57Z
Updated: 2 hours 4 min ago

List of string to string of hex values in python 3

Wed, 09/20/2017 - 20:44

I am new to python 3 and I was hoping to get a little assistance.

I have a list of strings:

>>>list = ['H','E','L','L','O',' ','W','O','R','L','D']

I want to convert the list to a string that contains the hex values. Like this:

'\x48\x45\x4c\x4c\x4f\x20\x57\x4f\x52\x4c\x44'

Configure email notification triggers on WooCommerce Advanced Notifications

Wed, 09/20/2017 - 20:12

I am using WooCommerce Advanced Notifications to send emails and as of v1.2.10 a filter has been added so you can change the trigger but I cannot get it to work.

The filter hook looks like this:

if ( apply_filters( 'woocommerce_advanced_notifications_multiple_statuses_trigger', true ) ) { add_action( 'woocommerce_order_status_pending_to_processing', array( $this, 'new_order' ) ); add_action( 'woocommerce_order_status_pending_to_completed', array( $this, 'new_order' ) ); add_action( 'woocommerce_order_status_pending_to_on-hold', array( $this, 'new_order' ) ); add_action( 'woocommerce_order_status_failed_to_processing', array( $this, 'new_order' ) ); add_action( 'woocommerce_order_status_failed_to_completed', array( $this, 'new_order' ) ); } else { add_action( 'woocommerce_order_status_completed', array( $this, 'new_order' ) ); }

What I would like to achieve

I'd like to be able to add my own trigger (e.g. processing_to_completed) and remove other triggers (e.g. pending_to_on-hold).

Where I've got to

I used this (http://docs.presscustomizr.com/article/26-wordpress-actions-filters-and-hooks-a-guide-for-non-developers) guide to understand more about filters and I've worked out that I can change which part of the if statement is used by adding this code to my functions.php

apply_filters( 'woocommerce_advanced_notifications_multiple_statuses_trigger', false );

But I can't see how to add new triggers. I cannot see how to pass a variable back into the filter.

I'd appreciate a point in the right direction. Thanks, Laura.

Use php to detect the string position of the last alpha character in a string?

Wed, 09/20/2017 - 20:05

Let's say I have the strings..

UA30230983A012 FK903980232P00

How do I get the strpos of the A, and the P? I'm trying to insert a - before the last alpha character and it's not going so well.

I've tried the following...

$var = strrpos($var, '/^[A-Z]+$/i', 0);

...but it always returns false?

Issues connecting to local .rdl report.

Wed, 09/20/2017 - 20:03

Now I've been looking here including a few answers in here for the same question but none really solved the problem or contained enough info to clarify a few information.

Now first of all I made a .rdl report that connects to an access database. All good so far. Now I want to connect it with my software without a server (local) looked up the codes and the closest I got something to work is this:

Private Sub GenerateLocalReport() ReportViewer1.ProcessingMode = ProcessingMode.Local ReportViewer1.LocalReport.ReportPath = "D:\work\OrdersInvoice\ReportInvoice\ReportInvoice\OrdersReport.rdl" reportViewer.RefreshReport() ReportViewer1.RefreshReport() End Sub

Now the issue is that the above code doesn't work. I get the following message: A data source instance has not been supplied for the data source.

Through searching what I found is that I needed to add something as a databinding. Now here is where the confusion begins.

Dim ds = New ReportDataSource("DataSet1",???) reportViewer1.LocalReport.DataSources.Add(ds)

this is the most direct code I could get. But I have no idea what they mean by binding datasource. I tried to create a datasource in the program but its not the real answer. I am kinda lost here.

One other code I found which should do the same is:

ReportViewer1.LocalReport.DataSources.Add(TempDBDataSet.OrderTableDataTable

again same issue

Answers in either C# or VB.net are fine.

Apache Beam 2.1.0 with Google DatastoreIO calls Guava Preconditions checkArgument on non-existing function in GAE

Wed, 09/20/2017 - 20:00

When building a dataflow template which should read from datastore I get the following error in stackdriver logs (from Google App Engine):

java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;I)V at org.apache.beam.sdk.io.gcp.datastore.DatastoreV1$Read.withQuery(DatastoreV1.java:494) .... my code

This happens in a line where a read from Datastore would be generated. The pom dependency

<!-- https://mvnrepository.com/artifact/org.apache.beam/beam-sdks-java-io-google-cloud-platform --> <dependency> <groupId>org.apache.beam</groupId> <artifactId>beam-sdks-java-io-google-cloud-platform</artifactId> <version>2.1.0</version> </dependency>

References

<!-- https://mvnrepository.com/artifact/com.google.guava/guava --> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>20.0</version> </dependency>

But this version does not contain a method checkArgument(String string) in class Preconditions, nor does any other version I looked at. As mentioned above, the template should be built inside a GAE flexible environment project and later executed, but the template generation fails.

If I let a main function generate the template locally, it works fine, but as soon as the project is in GAE, it fails.

Any Input is highly appreciated

how to retrieve int from firebase

Wed, 09/20/2017 - 19:36
private void updateScoreBreaker(){ DBref=FirebaseDatabase.getInstance().getReference().child(Gamelevel); Query maxScore =DBref.orderByChild(SCORE).limitToLast(1); maxScore.addListenerForSingleValueEvent(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { maxScoreLevel=Integer.parseInt(dataSnapshot.child(SCORE).getValue(String.class)); maxScoreName=dataSnapshot.getKey(); } @Override public void onCancelled(DatabaseError databaseError) { } }); }

i have this error : Cannot find local variable 'maxScoreLevel'

Determining whether an integer program is infeasible

Wed, 09/20/2017 - 19:23

Suppose we have an integer or mixed-integer program with a couple of thousand of constraints.

How can we determine whether this IP / MIP is feasible?

Calculating a rolling count over a specified window

Wed, 09/20/2017 - 19:23

The sample data may help explain what I'm trying to do more than explaining it, so I'll begin with that.

Here's the data I'm currently working with:

+-------------------------+--------------+ | CallStart | CallDuration | +-------------------------+--------------+ | 2017-09-15 09:15:15.313 | 00:01:28 | | 2017-09-15 09:15:15.317 | 00:01:45 | | 2017-09-15 09:16:45.603 | 00:01:31 | | 2017-09-15 09:17:00.637 | 00:01:24 | | 2017-09-15 09:18:20.853 | 00:01:42 | | 2017-09-15 09:18:25.870 | 00:01:24 | | 2017-09-15 11:27:05.117 | 00:00:59 | | 2017-09-15 11:31:16.053 | 00:01:18 | | 2017-09-15 11:34:41.627 | 00:01:00 | | 2017-09-15 12:16:45.413 | 00:01:01 | | 2017-09-15 12:18:15.820 | 00:01:05 | | 2017-09-15 12:30:43.607 | 00:01:04 | | 2017-09-15 12:31:48.817 | 00:00:55 | | 2017-09-15 12:35:14.563 | 00:00:59 | | 2017-09-15 12:42:10.947 | 00:00:43 | | 2017-09-15 12:56:28.807 | 00:01:14 | | 2017-09-15 13:05:10.643 | 00:00:37 | | 2017-09-15 13:20:08.400 | 00:00:37 | | 2017-09-15 14:30:12.607 | 00:00:59 | | 2017-09-15 14:31:22.807 | 00:00:49 | | 2017-09-15 15:19:47.240 | 00:01:07 | | 2017-09-15 16:04:47.753 | 00:00:55 | | 2017-09-15 16:58:08.080 | 00:00:55 | | 2017-09-15 17:05:04.557 | 00:00:50 | | 2017-09-15 17:20:42.753 | 00:00:58 | | 2017-09-15 17:28:09.140 | 00:01:05 | | 2017-09-15 17:39:46.690 | 00:00:38 | | 2017-09-15 17:40:21.957 | 00:01:05 | | 2017-09-15 17:43:47.570 | 00:01:08 | | 2017-09-15 17:47:23.390 | 00:01:05 | | 2017-09-15 17:47:28.410 | 00:00:56 | | 2017-09-15 17:51:59.380 | 00:01:04 | +-------------------------+--------------+

I am trying to get a rolling COUNT(*) for the number of occurrences in this data over a 15-minute timeframe. The expected result for this data would be the following:

+-------------------------+--------------+------------------+ | CallStart | CallDuration | DropsIn15Minutes | +-------------------------+--------------+------------------+ | 2017-09-15 09:15:15.313 | 00:01:28 | 1 | | 2017-09-15 09:15:15.317 | 00:01:45 | 2 | | 2017-09-15 09:16:45.603 | 00:01:31 | 3 | | 2017-09-15 09:17:00.637 | 00:01:24 | 4 | | 2017-09-15 09:18:20.853 | 00:01:42 | 5 | | 2017-09-15 09:18:25.870 | 00:01:24 | 6 | | 2017-09-15 11:27:05.117 | 00:00:59 | 1 | | 2017-09-15 11:31:16.053 | 00:01:18 | 2 | | 2017-09-15 11:34:41.627 | 00:01:00 | 3 | | 2017-09-15 12:16:45.413 | 00:01:01 | 1 | | 2017-09-15 12:18:15.820 | 00:01:05 | 2 | | 2017-09-15 12:30:43.607 | 00:01:04 | 3 | | 2017-09-15 12:31:48.817 | 00:00:55 | 3 | | 2017-09-15 12:35:14.563 | 00:00:59 | 3 | | 2017-09-15 12:42:10.947 | 00:00:43 | 4 | | 2017-09-15 12:56:28.807 | 00:01:14 | 2 | | 2017-09-15 13:05:10.643 | 00:00:37 | 2 | | 2017-09-15 13:20:08.400 | 00:00:37 | 2 | | 2017-09-15 14:30:12.607 | 00:00:59 | 1 | | 2017-09-15 14:31:22.807 | 00:00:49 | 2 | | 2017-09-15 15:19:47.240 | 00:01:07 | 1 | | 2017-09-15 16:04:47.753 | 00:00:55 | 1 | | 2017-09-15 16:58:08.080 | 00:00:55 | 1 | | 2017-09-15 17:05:04.557 | 00:00:50 | 2 | | 2017-09-15 17:20:42.753 | 00:00:58 | 1 | | 2017-09-15 17:28:09.140 | 00:01:05 | 2 | | 2017-09-15 17:39:46.690 | 00:00:38 | 2 | | 2017-09-15 17:40:21.957 | 00:01:05 | 3 | | 2017-09-15 17:43:47.570 | 00:01:08 | 3 | | 2017-09-15 17:47:23.390 | 00:01:05 | 4 | | 2017-09-15 17:47:28.410 | 00:00:56 | 5 | | 2017-09-15 17:51:59.380 | 00:01:04 | 6 | +-------------------------+--------------+------------------+

Sample data:

Create Table #Calls ( CallStart DateTime, CallDuration Time(0) ); Insert Into #Calls Values (N'2017-09-15T09:15:15.313', N'00:01:28'), (N'2017-09-15T09:15:15.317', N'00:01:45'), (N'2017-09-15T09:16:45.603', N'00:01:31'), (N'2017-09-15T09:17:00.637', N'00:01:24'), (N'2017-09-15T09:18:20.853', N'00:01:42'), (N'2017-09-15T09:18:25.87', N'00:01:24'), (N'2017-09-15T11:27:05.117', N'00:00:59'), (N'2017-09-15T11:31:16.053', N'00:01:18'), (N'2017-09-15T11:34:41.627', N'00:01:00'), (N'2017-09-15T12:16:45.413', N'00:01:01'), (N'2017-09-15T12:18:15.82', N'00:01:05'), (N'2017-09-15T12:30:43.607', N'00:01:04'), (N'2017-09-15T12:31:48.817', N'00:00:55'), (N'2017-09-15T12:35:14.563', N'00:00:59'), (N'2017-09-15T12:42:10.947', N'00:00:43'), (N'2017-09-15T12:56:28.807', N'00:01:14'), (N'2017-09-15T13:05:10.643', N'00:00:37'), (N'2017-09-15T13:20:08.4', N'00:00:37'), (N'2017-09-15T14:30:12.607', N'00:00:59'), (N'2017-09-15T14:31:22.807', N'00:00:49'), (N'2017-09-15T15:19:47.24', N'00:01:07'), (N'2017-09-15T16:04:47.753', N'00:00:55'), (N'2017-09-15T16:58:08.08', N'00:00:55'), (N'2017-09-15T17:05:04.557', N'00:00:50'), (N'2017-09-15T17:20:42.753', N'00:00:58'), (N'2017-09-15T17:28:09.14', N'00:01:05'), (N'2017-09-15T17:39:46.69', N'00:00:38'), (N'2017-09-15T17:40:21.957', N'00:01:05'), (N'2017-09-15T17:43:47.57', N'00:01:08'), (N'2017-09-15T17:47:23.39', N'00:01:05'), (N'2017-09-15T17:47:28.41', N'00:00:56'), (N'2017-09-15T17:51:59.38', N'00:01:04');

I can somewhat get this to work via the following:

Select CallStart, CallDuration, DropsIn15Minutes = ( Select Count(*) From #Calls C2 Where C2.CallStart Between DateAdd(Minute, -15, C1.CallStart) And C1.CallStart ) From #Calls C1

But, I would like to avoid the sub-query, in favor of a COUNT(*) OVER () (or any other solution if possible) solution.

Is this possible to do? Or is the sub-query the right solution for this?

How to show the row where QPushButton is clicked in QTableWidget

Wed, 09/20/2017 - 18:35

I would like to delete row where QPushButton is clicked how it is possible to i think it is reasonable to use slots but how to do it dont know , if you have any ideas how to get a row of selected button please share, thanks.

it is my table

it is a code where i add rows to my QTableWidget

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); for(int i = 0; i<20;i++) ui->tableWidget->insertRow(ui->tableWidget->rowCount()); QVector<QString>vec; vec<<"first"<<"sec"<<"third"<<"for"<<"fif"<<"first"<<"sec" <<"third"<<"for"<<"fif"; vec<<"first"<<"sec"<<"third"<<"for"<<"fif"<<"first"<<"sec" <<"third"<<"for"<<"fif"; for(int i = 0; i<ui->tableWidget->rowCount();i++) { for(int j = 0; j<ui->tableWidget->columnCount();j++) { if(j == 0) { QWidget* pWidget = new QWidget(); QPushButton* btn_edit = new QPushButton(); btn_edit->setText("Remove"); QHBoxLayout* pLayout = new QHBoxLayout(pWidget); pLayout->addWidget(btn_edit); pLayout->setAlignment(Qt::AlignCenter); pLayout->setContentsMargins(0, 0, 0, 0); pWidget->setLayout(pLayout); ui->tableWidget->setCellWidget(i, j, pWidget); continue; } QTableWidgetItem*item = new QTableWidgetItem(vec[i]); item->setFlags(item->flags() ^ Qt::ItemIsEditable); ui->tableWidget->setItem(i, j, item); } } }

Does GAP always complete its task before returning the prompt?

Wed, 09/20/2017 - 16:27

In investigating a certain problem, I let a GAP program run for a few days. It eventually terminated and presented me the prompt again. Does this guarantee that it ran the previously entered code or could something else have happened? If something else could have happened, then what?

How do I add a delay between SendInput commands in AutoHotkey?

Wed, 09/20/2017 - 15:28

I have an AutoHotkey script using SendInput which sends MouseClick commands too quickly for my program to handle. My script will send a MouseClick to focus an input field, then start typing before the field finishes focusing.

I've tried using SetKeyDelay to make my script run a bit slower, but this doesn't work with SendInput.

Note: SetKeyDelay is not obeyed by SendInput; there is no delay between keystrokes in that mode. This same is true for Send when SendMode Input is in effect.
Documentation for SetKeyDelay

My current workaround is to use sleep commands after each input, but this is less than ideal.

SendMode Input F1:: MouseClick, left, 61, 50 ; select title field sleep 100 ; artificial delay to prevent misfocused inputs SendInput %user_input%{Enter} ; enter job title sleep 100 ; artificial delay MouseClick, left, 67, 408 ; select job sleep 100 ; artificial delay Return

Ideally I would like a more elegant solution for adding a delay between each SendInput command without manually using a sleep command each time.

How can I add a delay between SendInput commands in AutoHotkey without repeatedly using sleep?

UITextView and iOS full keyboard input method cause 99% CPU utilization

Wed, 09/20/2017 - 08:56

I'm using ZSSRichTextEditor which include CYRTextView(subclass of UITextView) and came across a serious keyboard input delay when typing in large amount of characters via the iOS full keyboard input method. The time profiler showed heavy CPU utilization (nearly 100%) when typing in characters quickly. Full profiling result can be found from here. Could anyone help me take a look? any suggestion would be appreciated.

What are the pro and cons of using repositories in Spring Data JPA vs implementing a DAO?

Wed, 09/20/2017 - 08:56

I'm building an API layer to expose some read only data of our company database.

I'm prettyh comfortable with the Data Access Object pattern and not really familiar with Spring Data JPA.

A colleague of mine suggested we should use Spring Data JPA. Are there any pros in switching the current implementation to that framework? Are there any cons?

Selenium ChromeDriver Java: Proxy set in capabilities is missing in my driver instance

Wed, 09/20/2017 - 08:56

My pages are loading very slow when I'm using ChromeDriver as compared to when opening it from my Chrome browser directly. Because of this, i figured maybe adding a proxy will help. Now I'm trying to set the proxy using desired capabilities and then I'm passing the created capabilities when constructing my ChromeDriver instance.

I wanted to check whether my proxy is actually being set (because loading is still slow) but I noticed that it is missing on the created ChromeDriver.

Selenium Version: 3.5.3
Chrome Driver Version: 2.26

Code:
Something like...

Proxy proxy = new Proxy(); proxy.setFtpProxy(10.65.1.33:8080).setHttpProxy(10.65.1.33:8080).setSslProxy(10.65.1.33:8080); DesiredCapabilities caps = DesiredCapabilities.chrome(); caps.setCapability(CapabilityType.PROXY, proxy); WebDriver webDriver = new ChromeDriver(caps);

Here are the objects watched from debug mode:
caps: webDriver:

Am I setting the proxy wrongly or is this an issue?

Error: ionic cordova run android --prod --release

Wed, 09/20/2017 - 08:56

When I tried to build using the following command. How to resolve this problem. I am in doubt is this problem occur because of the ionic has been updated.

Even if i tried removing AccountPage from the directive the problem occurs for the next page ConfirmationPage.

ionic cordova run android --prod --release

Error

app.modules.ts

import { BrowserModule } from '@angular/platform-browser'; import { ErrorHandler, NgModule } from '@angular/core'; import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular'; import { HttpModule } from '@angular/http'; import { MyApp } from './app.component'; import { HomePage } from '../pages/home/home'; import { TransactionPage } from '../pages/transaction/transaction'; import { LoginPage } from '../pages/login/login'; import { SendPage } from '../pages/send/send'; import { DetailPage } from '../pages/detail/detail'; import { ConfirmationPage } from '../pages/confirmation/confirmation'; import { JoinPage } from '../pages/join/join'; import { AccountPage } from '../pages/account/account'; import { OtpPage } from '../pages/otp/otp'; import { StatusBar } from '@ionic-native/status-bar'; import { SplashScreen } from '@ionic-native/splash-screen'; import { TransactionDataProvider } from '../providers/transaction-data/transaction-data'; import { SenderProvider } from '../providers/sender/sender'; import { AuthServiceProvider } from '../providers/auth-service/auth-service'; @NgModule({ declarations: [ MyApp, HomePage, TransactionPage, LoginPage, SendPage, DetailPage, ConfirmationPage, JoinPage, OtpPage, AccountPage ], imports: [ BrowserModule, HttpModule, IonicModule.forRoot(MyApp), ], bootstrap: [IonicApp], entryComponents: [ MyApp, HomePage, TransactionPage, LoginPage, SendPage, DetailPage, ConfirmationPage, JoinPage, OtpPage, AccountPage ], providers: [ StatusBar, SplashScreen, {provide: ErrorHandler, useClass: IonicErrorHandler}, TransactionDataProvider, SenderProvider, AuthServiceProvider ] }) export class AppModule {}

Is there a way to connect 2 computers with a batch file?

Wed, 09/20/2017 - 08:55

I know there is something called PsExec but you need to have it installed on both of the computers or something.

Is there any other way to be able to connect/send messages/commands between 2 computers, and if not, then how can I do it with PsExec?

Update UI from callback methode (C#)

Wed, 09/20/2017 - 08:55

I have an Event Handler that call a methode (onLobbyParticipantAdded) after the event "lobbyParicipantAdded" arrived...

In the methode "onLobbyPaticipantAdded" the methode always end if it want to change something in the UI.

Here is my code

public override void ViewDidLoad() { base.ViewDidLoad(); EventHandler.Add("lobbyParticipantAdded", onLobbyParticipantAdded); } public void onLobbyParticipantAdded(dynamic obj) { LobbyParticipantAdded l = new LobbyParticipantAdded(); l = obj; SC1.Text = l.displayname; Ready1.Text = "Ready"; }

Does someone know this problem? And know how to solve it?

Thank you

Android O: Notification Channel localization

Wed, 09/20/2017 - 08:55

I created a Notification Channel like this:

NotificationChannel channel = new NotificationChannel(CHANNEL_ID_FOOBAR, getContext().getString(R.string.notification_channel_foobar), NotificationManager.IMPORTANCE_DEFAULT); notificationManager.createNotificationChannel(channel);

I provided different translations for R.string.notification_channel_foobar and the channel is created with the language being used at the time of the creation, hence if i eventually change the language of my device, that channel will remain with on the old language. Is there a way to overcome this or is this a limitation, by design?

MySQL WHERE IN not working properly

Wed, 09/20/2017 - 08:52

$comma_separated -> have this information for example (0018,0192, 4525, 7852)

And must update EmployeeID with same values, but updating also EmployeeID with 018, 18, 192, and so on... How can i fix it?

<?php session_start(); $name = $_GET['ch']; $comma_separated = implode(",", $name); $round = mt_rand(111111,999999); include('../mysql/db.php'); $SQL = "UPDATE employeetable SET Merge = ('$round') WHERE EmployeeID IN ($comma_separated)"; $result = mysqli_query($connect, $query); ?>

Android Oreo Font Family NPE Crash

Wed, 09/20/2017 - 08:52

I'm using the new Android Font support introduced in API 26 and backported in version 26 of the support library.

I've created a font_family.xml of two fonts like so:

<?xml version="1.0" encoding="utf-8"?> <font-family xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <font android:font="@font/regular_font" android:fontStyle="normal" android:fontWeight="400" app:font="@font/regular_font" app:fontStyle="normal" app:fontWeight="400"/> <font android:font="@font/bold_font" android:fontStyle="normal" android:fontWeight="700" app:font="@font/bold_font" app:fontStyle="normal" app:fontWeight="700"/> </font-family>

I then set it on a TextView in my activity layout like so:

<TextView style="@style/TextAppearance.Display1" android:layout_width="wrap_content" android:fontFamily="@font/font_family" android:textStyle="bold" android:layout_height="wrap_content" />

This works and renders the TextView in the correct font on a Nexus 5 running Marshmallow (using the support library). But it crashes when I try to run it on a Pixel Oreo device with the following stack:

Caused by: android.view.InflateException: Binary XML file line #44: Binary XML file line #44: Error inflating class TextView Caused by: android.view.InflateException: Binary XML file line #44: Error inflating class TextView Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.Boolean.booleanValue()' on a null object reference at android.support.v4.graphics.TypefaceCompatApi26Impl.abortCreation(TypefaceCompatApi26Impl.java:202) at android.support.v4.graphics.TypefaceCompatApi26Impl.createFromFontFamilyFilesResourceEntry(TypefaceCompatApi26Impl.java:220) at android.support.v4.graphics.TypefaceCompat.createFromResourcesFamilyXml(TypefaceCompat.java:116) at android.support.v4.content.res.ResourcesCompat.loadFont(ResourcesCompat.java:249) at android.support.v4.content.res.ResourcesCompat.loadFont(ResourcesCompat.java:213) at android.support.v4.content.res.ResourcesCompat.getFont(ResourcesCompat.java:206) at android.support.v7.widget.TintTypedArray.getFont(TintTypedArray.java:119) at android.support.v7.widget.AppCompatTextHelper.updateTypefaceAndStyle(AppCompatTextHelper.java:208)

Looks like some error with inflating the font but can't deduce much more than that.

Pages