Driver circuit for heating element (nichrome wire)
Lets fill a few gaps. The wire is just a component like any other, it has a resistance and depending on the voltage through it, the current will change. If you want to have 22mA and 4.51V, this means that the wire's resistance is 205 Ohms. This of course depends on the length of the wire and changing the length will change the resistance. Here the wire must be very short, because with 22mA, it will not heat a lot, and the bigger it gets, the less will it heat.

Driving from a 3.6V battery, means you have to decrease the resistance, or the current will not be the same. Of course when you decrease the length of the wire, and the power for it, you will have even less heat.

A MOS FET would be a better choice. The reasons are that the MOS will allow most of the voltage(from the 3.6V battery) to be applied over the wire and the current will depend only on the resistance. On the other hand a BJT can be used, but it will be controlling the current through the wire, depending on the base current, the resistance of the wire and the voltage source connected to the collector and emitter. If you set it to 22mA, but the resistance is 205 Ohms, you will get about 17mA, because the source is not 4.51V. It can be used to fine control the current. Its normally a good idea, but it will eat a part of your voltage, which will be applied on the transistor itself(collector-emitter junction) and the power over the wire will drop even more. A MOS has very low Rds[on], which should be better for your purposes.

This is only valid when you are powering something from the MCU's pin. If the power comes from the source instead of the MCU, this will allow you to power more things and just ground them through the MCU's pin. A whole MCU port of 8 pins can sometimes supply only 10mA as a whole, despite that an idividual pin is also capable of supplying 10mA, but if 1pin takes all the current, the rest will have nothing.