I’ve been playing around with developing a custom iOS component and have stumbled upon something very strange. What lead me here was the idea that my component should have the same look and feel as the standard components provided by the iOS APIs.
So here I was coding along and testing things out and I wanted to add a UIToolbar:
UIToolbar *toolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0.0, 0.0, frame.size.width, 30.0)];
Very straight forward. But when I fired this up in the simulator the bar was tinted blue, not like the light gray that is showing for the other bars (UINavigationBars, specifically) that I’m using already and that I want to mimic. Ok, let me try with a UINavigationBar, since I’m using those already:
UINavigationBar *navBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0.0, 0.0, frame.size.width, 32.0)];
Blue again…WTF? Now at this point a reasonable person would say something to the effect of “Screw this, I’ll just set the tintColor myself!”, and that’s what I did. But I was unable to get the color set to the right values to duplicate the default colors provided. I was close, but there’s no reason I shouldn’t be able to outright copy it. Now I’ve got to know what’s going on.
After spending a fair amount of time trying to figure out what the default tintColor values are (in a default state tintColor = nil, so I couldn’t just look at an existing component) and failing I started seeing what was different between the default UINavigationBar that I was already using and the one I was creating. Well the obvious difference was the height, default is 44, I was setting it to 30. So I set it to 44:
UINavigationBar *navBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0.0, 0.0, frame.size.width, 44.0)];
DING! It’s the light gray tint that I wanted, but why? Well, I don’t know, I did more poking around and could find zero mention of a correlation of the height of the components and their default tint color. So that’s why I’m writing this, so at least there’s some mention of this. Perhaps someone will pick up on this and point out something obvious that I’m missing, we’ll see.
I did more poking around and found that if the height is 32 or less, then it was blue, if greater that 32 (well, technically, greater than 32.000001) then it was light gray. The only reason I could think of this being a Good Idea™ is that 32 is the default height for the bars on the iPhone. But then this tintColor change should be tied to what device it’s actually running on, not some arbitrary height value.
I have every intent of searching RADAR and filing a report, but as it is I can’t seem to login, so I filed a bug report for the bug reporting system, of course. I’ll update this post if I found out more info.
Those that know me know I have an issue with making decisions. This usually manifests itself for the big decisions, those that will take a lot of resources (time, money, whatever…). I do a ridiculous amount of research and bother people asking for their opinions on things, often ad nauseum. The end goal is to give myself enough information about a decision to feel good about whatever the decision is.
Lately that’s gone a bit off track. I’ve made decisions I’ve regretted, nothing major at all, but the fact that I made the “wrong” decision eats at me and it’s been difficult to let go. I just gotta deal with it, remind myself that it’s really not a big deal at all, let it go…
The other decision making disorder scenario is where I just don’t care. The typical setup is “ do you want to ?” asked by someone else. “I don’t know/care” or “Whatever” are common responses to communicate that I don’t care. Well, ok, I’ve communicated my ambivalence, but that hardly helps the person asking the question. Obviously if they are asking the question then they are seeking assistance to reach a decision and are asking for useful feedback. My typical response in that scenario can’t be classified as “useful”.
Then what? I profess to not care, but then when pressed I still don’t give useful feedback, I’ll waffle about but won’t actually make a decision. Lame. I guess I really do care then, but it’s hit me that while I don’t care what the decision is, I do care that it’s not the “wrong” decision. Much ado about nothing, really, we’re talking about such earth-shaking matters like what to eat, or what movie to see, or something of equal importance. So what if it’s the wrong decision, live and learn, right? A bad meal or a bad movie isn’t the end of the world, and at least you’ll have an idea of what to avoid in the future…
I gotta let it go, it’s ok to be wrong. Besides, if I really don’t care, then pick one, any one. It will at least be a useful answer given to the person that asked for my feedback in the first place. It’s the least I can do for someone considerate enough to ask my opinion.
There are those things that you just do, habits. Good or bad, they don’t take a lot of thought. Either by routine or something less conscious, there are those things that we just do. Then there are those things that we decided to take on, the obligations, that we have to get done for one reason or another. These are the things that “should” be done, we’ve decided.
But what happens when the habits start to feel like obligations, when everything feels like an obligation? What happens when, for some reason, everything feels like must be done? Well, the first thing that happens is you feel worn out and tired. And then you feel annoyed and cranky. And then you start thinking about how your brain got to this place. And then…
Dunno, I’ll let you know when I figure it out.
With one project done, it’s time to move on to the next one…or the next three…or…. It seems a never ending list. But we’re working at it, slowly but surely. The weather and season are going to be dictating what gets done over the next few weeks, some of which I’m not exactly looking forward to doing, but I am looking forward to it being done.
Some times that’s my only motivation thought and it seems like I should have more. But frankly, any motivation works, so I’ll take it where I can get it.
Those that know me know I love my Jeep, whichever it may be. It started with a former roomie of mine having one. A year after I moved in, I had one of my own, a ’95 Cherokee Sport. Several years later I traded that in for a ’00 model. I held on to that for 9 years, but when Jeep introduced the 4 door Wrangler, I knew it was only a matter of time and an ’09 was acquired.
I had always had plans to build up “a” Jeep. The 2nd cherokee had all sorts of grand plans for it but got nothing more than a 2″ lift (Thanks for the help on that Matt!) and slightly larger tires. Funds and discipline were in short supply so it never materialized.
When I got the Wrangler plans started anew. Lots of research (surprise!) went into making the “must have” list. Earlier this year I started stalking the online boards to see if I could score the specific parts I wanted for a bit less than retail, and I’ve had pretty good success with it.
About a month ago I was getting ready to pull the final trigger on the build. I had acquired the wheels I wanted at steep discount and my tires had nearly 50k miles on them and had to be changed. So do I buy the same size tires again, or do I do the upgrade like I planned? Well to do the larger tires I planned meant that I had to have the lift to fit them, was I ready to put down the money and time to do that?
As I was pondering this, another thought hit me: the 2012 Wranglers had some major changes, most noticeably a new engine and transmission that offered a 40% increase in horsepower, yet had better fuel economy. Plus stylistic changes that were pretty damn nice. As the 2012 model year was coming to a close I decided to poke around on line to see what was available and the prices they were going for….oops.
Some of you know that I went through this a year ago. When the 2012 was introduced I was very tempted. I found one that I mostly liked and was days into negotiations with the dealer, but ultimately decided against buying at that time for a number of reasons. But then went on my way, quite content with my ’09.
Well, my ‘net searching found a Jeep that had every option I wish I could have had on my ’09, so I decided to take a look. As it happened it was in Provo, where I’m currently working, so it was easy. Too easy in fact, as they made me an offer I couldn’t refuse, and didn’t.
Waiting a year turned out to be the best thing that could have happened. While the exterior color I ended up with was #2 on the list (the one last year was my preference), the interior color and options were everything I wanted and the money saved was SO worth it. The short version is I paid significantly less than I would have last year, and got a significantly better equipped Jeep.
As I mentioned yesterday, the weekend was spent on a project with Angy: installing the lift on the new Jeep. It was by no means easy, but I learned a lot, which was the whole reason I wanted to do it. Near the end I was beginning to regret taking on the challenge ourselves, but a few days removed I’m so glad we did, there’s a certain personal satisfaction hat comes from doing something like that.
Before… (not my actual Jeep but one just like it.)
This weekend was spent on a project that has been years in the making. Not quite yet ready for the reveal, and it won’t appeal to most folks I imagine, but it’s something I’ve been waiting and working for. A large part of it came with a very underestimated amount of personal time and effort from both myself and Angy. The best laid plans…
Speaking of Angy, having a good partner for whatever it is your doing can not be understated. Both in life, as with this specific project, she knew what to do to help with frustration, troubleshooting, and probably most important of all, she knew when to ignore what I was saying because I was too blinded by frustration and troubleshooting to see a different solution.
So a pubic shout out to my partner Angy…there’s so very much I couldn’t do without you!
So the bug that I was worried about turned out to be fairly easy to track down and squash, thankfully. However I don’t understand why it’s happening in the first place, but I think it’s probably because I don’t understand the Bluetooth 4.0 spec as well as I thought. More studying is ahead…
The new project I’m working on is starting to mature in it’s functionality after a few months of poking, prodding and a whole lot of learning. I’ve been using the Core Bluetooth stack of the iOS API to talk to a custom piece of hardware and so far it’s been some fun discovery.
However, today I came across an interesting bug. Putting this software out for distribution to devices other than my development iPad was a bit of a chore, but once it was done I was feeling pretty good about things. Until I decided to run it on something other than my dev iPad. It installed just fine, but as soon as it detected the custom hardware, segfault! Tomorrow is going to be an interesting day as I try to figure out why two seemingly identical iPad 3s behave so differently.
Part of me is annoyed, but another part of me is looking forward to the challenge…I’m sure that will last all of a few hours before turning into a burning frustration.
I started watching Heros a few weeks back (thank you Netflix). I never caught it when it was airing, and in a way I’m glad I didn’t. It’s well written with perpetual cliffhangers, so the fact that I’m able to watch multiple episodes in a sitting is a good thing.
Favorite character thus far? Hiro.
October 1. I supposed I’m putting some significance on the number 1. Seems like a good place to start…something. We’ll see how long it lasts…
The weekend was a good balance of productivity and rest, with a bit of socializing involved. An afternoon on the water yesterday was a nice change of pace from slinging flagstone and stairs from the day before. So glad we have the hottub though, and now all the lights work!
Pondering a winter road trip to PDX to visit mom. Why not fly? Well driving would actually be a bit more expensive due to the gas prices, but it’s tough to take a boxer and a newf on a plane, and the thought of spending the holidays with 4 dogs and 2 cats seems almost too comical to pass up. Either that, or I’m just sick in the head…