How to make slightly-modified Android keyboard - android

I have a sort-of Scrabble-dictionary lookup app in mind (already have Java version working in Windows) in which the user can:
simply look up a word (e.g., hacker)
or
use wildcards (#, *, ?) to define a pattern for words he might be able to make
E.g.:
fixed length word: h???er (6 letters)
varying length word: h*er (3 to max number of letters)
fixed length word with no repeated letters: h###er (6 letters)
and unlimited combinations of ? and *: h?*er (4 to max number of letters)
I'd hate to have to make my own keypad and worry about positioning the cursor and editing text fields. It would be great if I could remap an existing keypad to look something like this:
Is it possible for an Android developer to change the face and action of a key on one of the standard keyboards? Or is there a keyboard template for just such purpose?
EDIT
Of course I mean to remap during execution of my app, which, the more I think about it, is probably impossible, except how does the "enter" key morph into "go" and "next" and stuff like that?
Likely I'll just have to settle for this setup with a standard qwerty pad and a few buttons, though I'd still have to worry about inserting the 3 wildcards into the text fields:
Might not be so bad. Agree?

Related

Xamarin Grid of Buttons or DataGrid for Generating a Playing Field for Numbers Based Game

I'm building a numbers based game similar to sudoku on Xamarin. I'm targetting both Android and iPhone, however, focusing on Android first. I've seen the SF Datagrid, and I've also seen the licensing price for that, but I've also seen some Unity tutorials that simply have a two-dimensional array of buttons. For Xamarin, targetting both iOS and Android, would a field of buttons plus an additional 10 buttons on the bottom for the input of the digits 0-9 be ok, or would a data table of some sort be more efficient and easier to code? I don't know if the table will be a 4x4, 6x6, 8x8, 10x10, 12x12, 14x14, or 16x16 until the game or "puzzle" is being generated.
Normally, there will be some options to select the level of the game, then based on the selected grade,we can determine whether the table is 4x4, 6x6, 8x8, 10x10, 12x12, 14x14, or 16x16.
For the table,we have many methods to achieve this, a simple method is to use Grid .
And there is a sample ,you can check it out here. It might help you.

Full text search on Android

I have some misundestanding concerning to FTS, I'd be thanksful if someone will be able to help me.
GOAL: Full text search using MATCH function.
Problem: Unable to do search by extended ASCII characters like: '#¿®£$ and etc.
Details: There are three predefined tokenizers: simple, porter and unicode61. But all of these tokenizers recognize special symbols as separators, because the documentation says:
A term is a contiguous sequence of eligible characters, where eligible characters are all alphanumeric characters and all characters with Unicode codepoint values greater than or equal to 128.
Possible solution (bad one): There is a way to specify extra symbols which should be used as separators for tokens or otherwise as a part of token.
CREATE VIRTUAL TABLE text USING FTS4(column, tokenize=unicode61 "tokenchars='$%")
After that I can find words like: that's, doll$r, 60%40 and etc, because tokenizer doesn't split tokens by '$% symbols.
But it doesn't suit me because there are a lot of extended symbols in ASCII table and it's not such a good solution to list all of them.
The main question: What is the best solution to do search by special symbols.
Thanks a lot and feel free to ask for more details if need.

Zero-width space with special characters

Interesting problem here, wondering if anyone has come across it.
I am building an Android app that has some special characters as text (mainly Japanese characters) and our designers want some soft returns strategically placed, incase the text needs to wrap due to width limitations on smaller devices.
The problem is that since the text is essentially Japanese, there are no spaces between words.
I know we can use \u200b as a zero-width space resulting in a string like this:
abcdef\u200bghijklmnop
appearing like this when there is enough room:
abcdefghijklmnop
and like this if it needs to wrap:
abcdef
ghijklmnop
The problem is that if instead of standard English characters, we use Japanese characters it doesn't seem to work. We don't get soft line breaks at all. It instead always breaks right where it runs out of space regardless of where we put the \u200b
ヘルプヘルプ\u200bヘルプヘルプ
results in:
ヘルプヘルプヘルプヘ
ルプ
Has anyone dealt with this before or have any ideas on how to solve this?

Chrome on Android renders unicode astrological characters as emoji, how can I disable that behavior (render them as normal characters)? [duplicate]

I've been trying to make use of the Unicode symbols for astrology in products for both Apple and iOS. I'm getting inconsistent results, as shown here:
Most of these are coming out as I like, but for some reason the Taurus symbol is appearing one way on the first line, following the Moon, and a very different way, with the Emoji-like purple button, when it follows Mars. These results are consistent for different symbols and across Apple hardware; here's a screen capture from my phone showing the same problem with some other signs - Scorpio comes out all right, but Libra and Cancer are buttons.
The strings are extremely straightforward; "Moon Taurus" in the first image is \u263D for Moon, \u2649 for Taurus, basically assembled as [NSString stringWithFormat:#"%#%#", #"\u263D", #"\u2649"]. The "Mars Taurus" image is the same, only with \u2642 for Mars. The string formatting is identical in the different cells of the OSX table, and in the iOS AttributedString.
Any idea what makes these symbols appear one way sometimes, and another way other times?
Unicode uses variation sequences to select between different renderings for certain code points—listed in the StandardizedVariants.txt file. In your case, the astrological symbols have both "text style" and "emoji style" variants that are selected between by a U+FEOE (text style) or U+FE0F (emoji style) following the code point:
U+2650 U+FE0E: ♐︎
U+2650 U+FE0F: ♐️
Note that correct interpretation of the variation selector depends on support from both the application/framework and the fonts being used. On Chrome (42) there doesn't appear to be any difference between my examples above, but on Safari (8) they are distinct.

Android. Problem with arabic keyboard

I make arabic virtual keyboard, and I have a problem.
If you write only arabic characters - all works (written right to left). But the numbers and punctuation marks are written to the right of the previous word. Although should be written to the left of the word. For example:
You write:
word_2011 where '_' is space
Must be:
'2011_drow' (look right to left, numbers read left to right)
but is:
'_drow2011'
Now more interesting. If you write 'NOW' you get
'_drow201WON1' (must be 'WON2011_drow')
This is Android problem? Or is it possible to solve it?
This is due to the way Android mis-implements bidi (bi-directional) logic.
You will also have issues with arabic letters not displaying the mid and start letters correctly.
To work around the space problem you could try to insert a direction character between them see: http://en.wikipedia.org/wiki/Unicode_control_characters. This will work, but will get a square displayed instead of a space in some phones.

Categories

Resources